Ich wollte einige Daten aus einer SVG-Datei extrahieren. Ich weiß, dass SVG XML ist, also dachte ich, dass es ziemlich einfach wäre, die Daten mit JS herauszulocken.
Ich wollte also eine Menge Text aus einer SVG extrahieren. Also habe ich die JS-Konsole von Chrome angeworfen und versucht, ein paar Sachen zu machen. Ich musste alle tspan
-Elemente in einem Array abrufen, ihren Text extrahieren und kategorisieren.
Ich beziehe mich im Moment auf Ссылка .
Also, ich benutze a = document.getElementsByTagName('tspan')
. Jetzt probiere ich a[20].innerHTML
und bekomme undefined
. Angemessen; es ist kein HTML und iirc innerHTML ist sowieso nicht standardisiert.
Dann probiere ich a[20].childNodes[0]
und bekomme "ELF"
. OK, das wollte ich. Aus irgendeinem Grund wird dieses Objekt wie eine Zeichenfolge behandelt, kann jedoch nicht in eine Zeichenfolge konvertiert werden. Wenn ich versuche es zu konvertieren (damit ich Sachen wie matches()
und indexOf()
benutzen kann), bekomme ich "[object Text]"
. Das Auftauchen in Text.prototype
hilft nicht - ich kann keine Funktion finden, die es in eine Zeichenkette umwandelt.
Wie kann man also das innerHTML eines SVG-Objekts durch JS bekommen?
Tags und Links javascript xml svg