Keine Fallunterscheidung (document.all/layers) bei NS 7.0
Danny Lupo
- javascript
0 Bio
Hallo!
Ich habe in einem Javascript eine Fallunterscheidung gemacht, die abfragt, ob es sich um IE oder NS handelt.
Je nachdem schreibe ich meinen Inhalt in einen Div-Tag oder einen Layer.
Das funktioniert z.B. in Netscape 4.7 auch noch prima. In Netscape 7.0 aber z.b. streikt die Seite.
Was ist das Problem?
Bin für jede Anregung dankbar, Euer Danny.
Der Auszug aus dem Javascript-Quellcode:
if(document.all) /* Fall für IExplorer! */
{
document.all.Bildbereich.innerHTML = "text";
}
else if(document.layers) /* Fall für Netscape! */
{
document.Bildbereich_Net.document.open();
document.Bildbereich_Net.document.write("text");
document.Bildbereich_Net.document.close();
}
Der Auszug aus dem Body:
<layer left=20 name="Bildbereich_Net">
</layer>
<div id="Bildbereich" style="text-align:center;">
</div>
Sup!
Das Problem ist, daß Du die Entwicklung in den letzten 3 Jahren verschlafen hast.
Netscape 7 hat ein ganz anderes DOM als Netscape 4.
Gruesse,
Bio
Heißt also auch ein komplett anderes Javascript?
Wie sieht das denn dann analog in NS 7.0 zum schreiben in einen Layer aus?
Hallo Danny,
Wie sieht das denn dann analog in NS 7.0 zum schreiben in einen Layer aus?
Schau mal hier:
http://selfhtml.teamone.de/dhtml/modelle/dom.htm
Grüße
Andreas
Wie sieht das denn dann analog in NS 7.0 zum schreiben in einen Layer aus?
Layers sind nicht mehr, man arbeitet jetzt mit CSS2.0, da kannst Du per z-index auch mit Ebenen arbeiten.
Falls du scripte hast, die unter alten und neuen Browsern funktioniern sollen, kannst Du die unterschiedliche Technik zur Fallunterscheidung nutzen:
if (document.all)
{
// für IE in allen Geschmacksrichtungen
}
else if (document.getElementById)
{
// Netscape 7 und allen anderen modernen Browser
}
else if (document.layers)
{
// Netscape 4 und so
}
Viel Erfolg!
Barbara
thx.
werde es wahrscheinlich so machen.
der danny.