Erscheinen von verschiedenen Div-Tag auf gleicher Position
powerfight
- javascript
Wie gesagt möchte ich verschiedene Div-Tags auf ein und der selben Position erscheinen lassen. Das Problem ist das DIV-Tag1 auf ebene 1, div-tag2 auf ebene 2 usw. liegt, wenn ich jetzt div-tag2 erscheinen lase liegt es über Div-tag1 und man kann somit div-tag1 nicht mehr sehen.
Gibt es somit eine Möglichkeit in Javascript das die Div-tags alle vorher auf hidden gesetzt werden wenn ich ein anderes Div-tags öffne.
Eine Möglichkeit wäre folgende beim öffnen von div-tag2:
document.all[div-tag1].style.visibility="hidden";
document.all[div-tag2].style.visibility="hidden";
document.all[div-tag3].style.visibility="hidden";
document.all[div-tag2].style.visibility="visible";
nur ist dies etwas sehr sinnlos finde ich. Besonders muss man wenn man ein Menu hinzufügt oder entfernt jedesmal den Quelltext ändern.
Gibt es da nicht noch ne andere Variante??
powerfight
hi,
Wie gesagt möchte ich verschiedene Div-Tags auf ein und der selben Position erscheinen lassen. Das Problem ist das DIV-Tag1 auf ebene 1, div-tag2 auf ebene 2 usw. liegt, wenn ich jetzt div-tag2 erscheinen lase liegt es über Div-tag1 und man kann somit div-tag1 nicht mehr sehen.
das ist nur logisch - wenn du ein buch auf einen stapel anderer legst, siehst du die unter ihm liegenden auch nicht mehr.
du müsstest also das buch, dass du oben sehen willst, auch nach oben sortieren.
in css gibt es dazu den z-index.
gruss,
wahsaga
Hallo,
zu Beginn musst du alle DIVs auf "hidden" setzen und eine Variable auf false setzen.
Wird ein DIV nun sichtbar, speicherst du in die Variable die ID des jeweils sichbaren DIV als String. Die erste Funktion macht einen DIV sichbar und versteckt einen evetuell bereits angezeigten. Die 2. Funktion schließt einen angezeigten Layer. "welches" ist jeweils die ID des zu betrachtenden DIVs.
var DivJa = false;
function elementSichtbar (welches)
{
if (DivJa)
{ document.getElementById(DivJa).style.visibility="hidden"; };
document.getElementById(DivJa).style.visibility="visible";
DivJa = welches;
};
function elementWeg (welches)
{
if (DivJa)
{
document.getElementById(DivJa).style.visibility="hidden";
DivJa = false;
};
};
Frei variierbar.hab's im Moment auch nicht ausprobiert, aber das Prinzip stimmt.
Ciao
Liza
Hallo,
da ist mir doch ein kleiner aber irgendwie relevanter Fehler unterlaufen! So lief gar nichts! Also noch einmal neu:
zu Beginn musst du alle DIVs auf "hidden" setzen und eine Variable auf false setzen.
Wird ein DIV nun sichtbar, speicherst du in die Variable die ID des jeweils sichbaren DIV als String. Die erste Funktion macht einen DIV sichbar und versteckt einen evetuell bereits angezeigten. Die 2. Funktion schließt einen angezeigten Layer. "welches" ist jeweils die ID des zu betrachtenden DIVs.
var DivJa = false;
function elementSichtbar (welches)
{
if (DivJa)
{ document.getElementById(DivJa).style.visibility="hidden"; };
document.getElementById(welches).style.visibility="visible";
DivJa = welches;
};
function elementeWeg ()
{
if (DivJa)
{
document.getElementById(DivJa).style.visibility="hidden";
DivJa = false;
};
};
Verzeih meine Unaufmerksamkeit. Hab 'n paar Variable vertauscht.
Ciao
Liza
Ich danke dir sehr, funktioniert wirklich sehr gut.
powerfight