Ich versuche zu machen, wenn ein Knopf gedrückt wird, dass immer nur ein DIV sichtbar ist. Wenn sie auf eine andere Schaltfläche klicken, wird das entsprechende div angezeigt und das letzte ausgeblendet.Ein DIV immer sichtbar machen
Ich habe eine versuchte Schleife:
function display(x) {
for (i=0; i<content.length; i++){
content[i].style.display = 'none';
}
if(x = content[i]){
x.style.display = 'inline';
}
}
Das ist nicht nichts getan.
Ich habe versucht, die if-Anweisung innerhalb der Schleife verschachteln, aber es verursacht, dass alle sichtbar sind.
Ich habe die jsfiddle unten verbunden.
Bitte keine jQuery Antworten, wie ich versuche zuerst reines Javascript zu lernen.
Vielen Dank im Voraus.
https://jsfiddle.net/ethacker/rp59g9cf/
Das ist, weil 'i' wird = zu' content.length', in Ihrem 'for()' 'i' wird +1 jedes Mal, wenn es so am Ende für Ihre Schleife ausgeführt wird Es zielt auf das letzte Array-Element von 'content' ab. Versuchen Sie, Ihre if-Bedingung in Ihre for-Schleife zu setzen. – NewToJS
Auch nicht sicher, warum Sie jede Schaltfläche [] so anvisieren, wie Sie sind. Warum führen Sie sie nicht in einer 'for()' - Schleife aus und verwenden 'i', um den Ereignisanruf einzustellen? Beispiel 'buttons [i] .addEventListener (" click ", function() {display (content [i])};' da der Index der Schaltfläche dem Index von 'content []' entspricht, den Sie übergeben möchten .. – NewToJS