Problem mit getElementById
Wilhelm Turtschan
- javascript
Hallo zusammen,
Ich bin gerade dabei, als Spielerei meine neuen Seiten im Mozilla zu "begutachten". Dabei stolperte ich ueber ein Problem: bei der Ausgabe von Konstanten in ein <div>-Element werden bei document.getElementById (auch fuer IE5.5) keine HTML-Tags interpretiert, sprich die Variable konst1 wird so wie definiert ausgegeben. Ebenso die maskierten Umlaute aus dem Array.
Auszug aus Array:
bgtext[7] = new Array('"Ungeglättete Kanten"<br>Die zackigen Grenzlinien zwischen Formen mit unterschiedlichen Farben innerhalb eines Bildes, die bei Bitmap-Grafiken auftreten.');
Die Funktion:
function nextTxt(Txt) {
var konst1 = '<table><tr><td width="365" class="kasten">';
var konst2 = '</td></tr></table>';
var newText = konst1 + bgtext[Txt][0] + konst2;
if (browser == "Netscape" && version >= "5" browser == "Explorer" && version >= "5")
{document.getElementById('lexitext').firstChild.data = newText;}
if (browser == "Explorer" && version == "4")
{document.all.lexitext.innerHTML = newText;}
if (browser == "Netscape" && version == "4")
{
document.lexitext.document.open();
document.lexitext.document.write(newText);
document.lexitext.document.close();
}
}
HTML-Sektion:
<div id="lexitext" class="kasten">"hier wird ein blank gesetzt"</div>
Sehe ich vor lauter Baeumen den Wald nicht mehr? Vielleicht hat jemand einen Denkanstoss fuer mich.
uebrigens: bei document.all und document.layers stimmt alles.
Gruesse
Wilhelm
PS1: ich weiss, dass bei der Browserabfrage vorerst etliche ausgesperrt sind. :-)
PS2: Ich kann evtl. erst am Freitag reagieren, da ich jetzt 2 Tage offline bin (sein muss).
Sehe ich vor lauter Baeumen den Wald nicht mehr? Vielleicht hat jemand einen Denkanstoss fuer mich.
uebrigens: bei document.all und document.layers stimmt alles.
Zu Mozilla und innerHTML hilft Dir vielleicht http://eae.net/webfx/dhtml/mozInnerHTML/mozInnerHTML.shtml.
PS1: ich weiss, dass bei der Browserabfrage vorerst etliche ausgesperrt sind. :-)
Es ist guenstiger, je nach Bedarf, auf bestimmte DOM-Unterstuetzung, statt auf Browser-Namen bzw. -Versionen zu pruefen:
if (document.all && !document.getElementById)
{
/* Code fuer IE 4 */
}
if (document.getElementById)
{
/* gemeinsamer Code fuer IE 5.x und NN6 bzw. sonstige W3C-DOM-Browser*/
}
if (document.all && document.getElementById)
{
/* Code fuer IE 5.x */
}
if (document.layers)
{
/* Code fuer NN 4.x */
}
MfG, Thomas