Moin!
Ah! Ich sehe es gerade:
Ich nehme mal Deine Funktion und kommentiere diese:
function ebene_initialisieren(name)
{
if (ns4 || ns5 || ns6 || ns7)
{
// Deine umfangreiche Browserabfrage ermittelt womöglich einen Netscape / Mozilla
ie = true;
// Wieso ist ie dann true???
return(objekt = eval("document."+name));
}
else
{
if (ie4 || ie5 || ie5_5 || ie6)
// Deine umfangreiche Browserabfrage ermittelt womöglich einen IE
{
ns = true;
// Wieso ns dann true?
return(objekt = eval("document.all."+name+".style"));
}
}
}
Du hast also die Variablen ie, ns vertauscht.
Zweitens:
Die Mozillas / Netscapes teilweise der IE verhalten sich W3C- konform:
Netscape 4 und die IE's kennen kennen noch ein eigenses Modell, wober die IE mal wieder doppeldeutig sind, die verstehen das neue (W3C) und das alte aus dem 4er. Auf Grund des Wirrwars hat es sich als besser herausgestellt, direkt zu prüfen, ob es das Objekt gibt und die Eigenschaft kennt.
Netscape 4:
document.ELEMENT.visibility="hide";
IE4:
document.all.ELEMENT.style.visibility="hidden";
IE5, Mozilla, Netscape, Opera, Konquereor...
document.getElementById('ELEMENT').style.visibility="hidden";
function ebene_anzeigen(element, sichtbar) {
// erwartet folgende Parameter:
// element: name (Netscape4) oder ID (IE, Mozilla)
// sichtbar: 0 -> verbergen; 1 -> zeigen
// W3C:
if documentGetElementById(element).style.visibility {
if (sichtbar==0) {
documentGetElementById(element).style.visibility="hidden";
} else {
documentGetElementById(element).style.visibility="visible";
}
return;
}
// IE4
objekt = eval("document."+element));
if document.all."+element+".style
if (objekt.visibility) {
if (sichtbar==0) {
objekt.visibility="hidden";
} else {
objekt.visibility="visible";
}
return;
}
// Netscape 4.x:
objekt = eval("document."+element));
if (objekt.visibility) {
if (sichtbar==0) {
objekt.visibility="hide";
} else {
objekt.visibility="show";
}
return;
}
}
Ich vermute nicht, daß das Skript wirklich fehlerfrei ist... ich habe das "blind" geschrieben.
Alternierend lohnt sich auch das Benutzen (und vor allem das Lesen) von:
http://selfhtml.teamone.de/dhtml/beispiele/dhtml_bibliothek.htm
Grund: Deine Unterlage ist wohl "etwas" veraltet und Deine Skripte dürften Probleme mit einer großen Zahl moderner Browser haben, unterstützen aber Urgesteine a la NS4, IE4, die mittlerweile seltener vorkommen als moderne "Nicht-IE's"
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Development. Auch für seriöse Agenturen.