Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mengakses Elemen SVG daripada Fail Dijana Illustrator dengan JavaScript?

Bagaimana untuk Mengakses Elemen SVG daripada Fail Dijana Illustrator dengan JavaScript?

Patricia Arquette
Lepaskan: 2024-11-12 07:22:02
asal
514 orang telah melayarinya

How to Access SVG Elements from Illustrator-Generated Files with JavaScript?

Mengakses Elemen SVG dengan JavaScript daripada Fail SVG Dijana Illustrator

Seperti yang dibincangkan, mengakses elemen SVG dengan JavaScript daripada fail SVG yang dibuat dalam Adobe Illustrator memang boleh dilakukan tanpa menggunakan perpustakaan pihak ketiga seperti Raphaël atau jQuery SVG.

Untuk mencapai ini:

1. Muatkan Fail SVG Secara Asynchronous:

Sertakan HTML5 elemen untuk memuatkan fail SVG secara tidak segerak dan mengakses model objek dokumennya (DOM).

<object data="alpha.svg" type="image/svg+xml">
Salin selepas log masuk

2. Tambah Pendengar Acara Muatkan:

Lampirkan pendengar acara muatkan pada untuk melaksanakan fungsi panggil balik apabila dokumen SVG selesai dimuatkan dan DOMnya tersedia.

<script>
    var a = document.getElementById("alphasvg");
    a.addEventListener("load",function(){
        // code here executes after SVG loads
    }, false);
</script>
Salin selepas log masuk

3. Dapatkan DOM Dalaman dan Elemen Akses:

Dalam panggilan balik acara muatkan, manipulasi DOM dalaman dokumen SVG dengan mendapatkannya:

var svgDoc = a.contentDocument;
Salin selepas log masuk

Menggunakan rujukan ini kepada svgDoc, anda boleh mengakses elemen tertentu mengikut ID mereka menggunakan getElementById kaedah:

var delta = svgDoc.getElementById("delta");
Salin selepas log masuk

4. Tambah Pengendali Acara:

Setelah anda mempunyai akses kepada elemen, anda boleh melampirkan pengendali acara untuk gelagat. Contohnya, untuk menambah pengendali klik pada elemen 'delta':

delta.addEventListener("mousedown",function(){
    alert('hello world!')
}, false);
Salin selepas log masuk

Penghadan:

Teknik ini tertakluk pada dasar asal yang sama. Oleh itu, fail SVG mesti dihoskan pada domain yang sama dengan fail HTML untuk memastikan akses kepada DOM dalaman.

Atas ialah kandungan terperinci Bagaimana untuk Mengakses Elemen SVG daripada Fail Dijana Illustrator dengan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan