DIV anzeigen und verschwinden lassen
Martin Podemski
- javascript
0 Martin Podemski0 berdn
Hallo,
ich möchte die Anzeige von verschiedenen Containern tauschen!
Ich habe acht Container, die je nach Auswahl angezeigt werden sollen. Der vorherige muss natürlich weg.
Die folgende Funktion macht den neuen Container zwar sichtbar, aber schaltet den alten nicht ab.
function verstecke2(Pos) {
for (var x = 0; x <= 8; x++) {
var DIV_name = "form_" + Pos
var DIV_Style = document.getElementById(DIV_name).style.display;
if ( Number == x ) {
document.getElementById(DIV_name).style.display = "block";
}
else {
if ( DIV_Style == "block" ) {
document.getElementById(DIV_name).style.display = "none";
}
}
}
}
HTML:
<div id="form_0">
<p>Start</p>
</div>
<div id="form_1">
<p>Seite 1</p>
</div>
CSS
#form_0 {
position:absolute;
display:block;
left:150px;
top:150px;
width:300px;
height:150px;
}
#form_1 {
position:absolute;
display:none;
left:150px;
top:150px;
width:300px;
height:150px;
}
Hallo!
alert() ist Dein Freund!
Hier der richtige Code:
function verstecke(Pos) {
for (var x = 0; x <= 8; x++) {
var DIV_name = "form_" + x
var DIV_Style = document.getElementById(DIV_name).style.display
if ( Pos == x ) {
document.getElementById(DIV_name).style.display = "block"
}
else {
if ( DIV_Style != "none" ) {
document.getElementById(DIV_name).style.display = "none"
}
}
}
}
Hmmmh,
Du kannst den Style eines Elementes mit JS abfragen wenn er auch über JS gesetzt wurde.
Warum dann nicht so (ungetestet)?
function verstecke(Pos) {
for (var x = 0; x <= 8; x++) {
var DIV_id = "form_" + x;
if( document.getElementById(DIV_id))
document.getElementById(DIV_id).style.display = "none";
if ( Pos == x ) {
document.getElementById(DIV_id).style.display = "block";
}
}
}
Viele Grüße
Bernd