Kann Text nicht ansprechen bzw. ändern
sirrobin
- svg
Moinsens Leude,
ich hab da so ein problem mit dem IE8/ASP und komm nicht weiter:
Habe ein SVG in eine Html seite eingebunden via EMBED und spreche
es mit namen"tacho" in js an.
var svgdoc = document.tacho.getSVGDocument();
var ob= svgdoc.getElementById("kmh12");
ob.textContent = param2P18/2;
Mit FF ist das kein Problem und der Tachotext 1/2 MaxKmh wir mir dem Parameter gesetzt. Nur der IE macht so mal garnix!
Im SVGDoc sieht der Bereicht übrigens so aus:
<text
xml:space="preserve"
style="font-size:8px;font-style:normal;font-weight:normal;text-align:start;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:sans-serif"
x="175.5"
y="87.5"
>
<tspan
sodipodi:role="line"
id="kmh12"
x="175.5"
y="87.5">nochleer</tspan>
</text>
Schlimmer noch:
var ob= svgdoc.getElementById("kmh12");
var anzahl = ob.childNodes.length;
alert(anzahl);
alert(ob.childNodes[0].nodeValue);
FF meint dazu: childnodes = 1 -> Value "nochleer"
IE8 meint dazu: ja, auch 1 aber das > Value childNodes.0.nodeValue is null or not an object!!!
Verstehe ich nicht! Wer weis rat!
robin
Hallo sirrobin,
var svgdoc = document.tacho.getSVGDocument();
var ob= svgdoc.getElementById("kmh12");
ob.textContent = param2P18/2;
>
> Mit FF ist das kein Problem und der Tachotext 1/2 MaxKmh wir mir dem Parameter gesetzt. Nur der IE macht so mal garnix!
Probiere:
`ob.firstChild.nodeValue = param2P18/2;`{:.language-javascript}
> ...
> var anzahl = ob.childNodes.length;
> alert(anzahl);
> alert(ob.childNodes[0].nodeValue);
> [/code]
>
> FF meint dazu: childnodes = 1 -> Value "nochleer"
> IE8 meint dazu: ja, auch 1 aber das > Value childNodes.0.nodeValue is null or not an object!!!
Probiere:
`alert(ob.childNodes.item(0).nodeValue);`{:.language-javascript}
Poste bei weiteren Problemen kurze, testfähige HTML- und SVG-Dokumente oder einen Link darauf.
Grüße,
Thomas
Hi Thomas,
danke- Das klappt bei beiden Browsern! (Jubel)
ob.firstChild.nodeValue = param2P18/2;
Jetzt kann ich den Rest der Visualisierung vollenden mit svg!
DANKE DANKE DANKE
robin