Я пытаюсь сделать, когда некоторые кнопки нажимают кнопку, на которой отображается только один div. Поэтому, когда они нажимают другую кнопку, соответствующий div появляется, а последний скрывается.Создание одного div, видимого одновременно
Я попробовал цикл:
function display(x) {
for (i=0; i<content.length; i++){
content[i].style.display = 'none';
}
if(x = content[i]){
x.style.display = 'inline';
}
}
Это ничего не делать.
Я попытался вставить инструкцию if внутри цикла, но все это стало видимым.
Я связал jsfiddle ниже.
Пожалуйста, не отвечайте на вопросы jQuery, поскольку я пытаюсь сначала изучить чистый javascript.
Заранее благодарен.
https://jsfiddle.net/ethacker/rp59g9cf/
Это потому, что 'i' will = to' content.length', в вашем 'for()' 'i' будет каждый раз каждый раз, когда он запускается так в конце вашего цикла он будет нацелен на последний элемент массива 'content'. Постарайтесь разместить свое условие if внутри цикла for? – NewToJS
Также не знаете, почему вы нацеливаете каждую кнопку '['] так, как вы. Почему бы не запустить их в цикле 'for()' и использовать 'i' для установки вызова вызова? Пример 'buttons [i] .addEventListener (« click », function() {display (content [i])};' поскольку индекс кнопки равен индексу 'content []', который вы хотите передать. – NewToJS