【发布时间】:2019-03-23 23:31:54
【问题描述】:
我正在尝试隐藏 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 并将该按钮中的文本更改为“显示 div”。
我第二次单击按钮时 - 我希望显示 div 以及将该按钮中的文本更改回“隐藏 Divs”。
【问题讨论】:
-
什么不起作用?你目前有什么行为?
-
@FutureCake 我遇到的问题是按钮的内容没有改变。
标签: javascript html