Я пытаюсь скрыть div и изменить текстовое содержимое кнопок одновременно.
Проблема: Проблема, с которой я столкнулся, заключается в том, что div скрыт, носодержимое кнопки не изменяется.
Я буду использовать несколько кнопок, чтобы скрыть и показать несколько изображений и текстов.
HTML
<div class="hide-show-divs">
<p>Some content in a div</p>
<p>More content in a div</p>
</div>
<div class="hide-show-divs">
<p>Some content in a div</p>
<p>More content in a div</p>
</div>
Кнопка
<div>
<button class="hide-show-divs-btn" onclick="toggle()">Hide Divs</button>
</div>
JavaScript
function toggle() {
var hideShowDivs = document.getElementsByClassName("hide-show-divs");
for(var i = 0; i < hideShowDivs.length; i++){
if (hideShowDivs[i].style.display === "none") {
hideShowDivs[i].style.display = "block";
changeBtnText();
} else {
hideShowDivs[i].style.display = "none";
}
}
}
function changeBtnText() {
var hideShowImgBtn = document.getElementsByClassName("hide-show-divs-btn");
for(var i = 0; i < hideShowImgBtn.length; i++)
if(hideShowImgBtn[i].value =="Show divs") {
hideShowImgBtn[i].value = "Hide divs";
}else {
hideShowImgBtn[i].value = "Show divs";
}
}
Что должно произойти:
При первом нажатии на кнопку - я хочу, чтобы элементы div были скрыты кака также текст в этой кнопке, чтобы изменить на «Показать Divs».
Во второй раз, когда я нажимаю на кнопку - я хочу, чтобы отображались div и текст в этомкнопку, которую нужно изменить на «Скрыть разделы».