Heim > Web-Frontend > js-Tutorial > Wie greife ich mit JavaScript auf SVG-Elemente aus von Illustrator generierten Dateien zu?

Wie greife ich mit JavaScript auf SVG-Elemente aus von Illustrator generierten Dateien zu?

Patricia Arquette
Freigeben: 2024-11-12 07:22:02
Original
475 Leute haben es durchsucht

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

Zugriff auf SVG-Elemente mit JavaScript aus von Illustrator generierten SVG-Dateien

Wie besprochen, Zugriff auf SVG-Elemente mit JavaScript aus in Adobe Illustrator erstellten SVG-Dateien ist in der Tat möglich, ohne Bibliotheken von Drittanbietern wie Raphaël oder jQuery SVG zu verwenden.

Um dies zu erreichen dies:

1. Laden Sie die SVG-Datei asynchron:

Einbinden eines HTML5 Element, um die SVG-Datei asynchron zu laden und auf ihr Dokumentobjektmodell (DOM) zuzugreifen.

<object data="alpha.svg" type="image/svg+xml">
Nach dem Login kopieren

2. Ladeereignis-Listener hinzufügen:

Hängen Sie einen Ladeereignis-Listener an das an. um eine Rückruffunktion auszuführen, wenn das SVG-Dokument vollständig geladen ist und sein DOM verfügbar wird.

<script>
    var a = document.getElementById("alphasvg");
    a.addEventListener("load",function(){
        // code here executes after SVG loads
    }, false);
</script>
Nach dem Login kopieren

3. Rufen Sie das innere DOM ab und greifen Sie auf Elemente zu:

Manipulieren Sie innerhalb des Load-Event-Callbacks das innere DOM des SVG-Dokuments, indem Sie es abrufen:

var svgDoc = a.contentDocument;
Nach dem Login kopieren

Mit dieser Referenz auf svgDoc können Sie darauf zugreifen Bestimmte Elemente anhand ihrer IDs mithilfe der getElementById-Methode:

var delta = svgDoc.getElementById("delta");
Nach dem Login kopieren

4. Ereignishandler hinzufügen:

Sobald Sie Zugriff auf die Elemente haben, können Sie Ereignishandler für Verhalten anhängen. Um beispielsweise einen Click-Handler zum Element „delta“ hinzuzufügen:

delta.addEventListener("mousedown",function(){
    alert('hello world!')
}, false);
Nach dem Login kopieren

Einschränkungen:

Diese Technik unterliegt der Same-Origin-Richtlinie. Daher muss die SVG-Datei auf derselben Domäne wie die HTML-Datei gehostet werden, um den Zugriff auf das innere DOM sicherzustellen.

Das obige ist der detaillierte Inhalt vonWie greife ich mit JavaScript auf SVG-Elemente aus von Illustrator generierten Dateien zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage