我在自己的网站上设置了“个人简介”部分,并且我有3张员工图片和3个div,下面每个员工的个人简历。我想默认隐藏所有BIOS,然后仅显示与单击的图像关联的div,并隐藏所有其他div。
当前似乎找不到元素,因为我正在“未定义”
到目前为止,这是我的HTML:
<div onclick="showhide('bill');" class="bio_image"><div class="name">Bill Murray</div></div>
<div onclick="showhide('bill2');" class="bio_image"><div class="name">Bill Murray</div></div>
<div onclick="showhide('bill3');" class="bio_image"><div class="name">Bill Murray</div></div>
<div class="hide" id="bill">BILL</div>
<div class="hide" id="bill2">BILL2</div>
<div class="hide" id="bill3">BILL3</div>
而我的Javascript:
function showhide(id){
if (document.getElementById) {
var divid = document.getElementById(id);
var divs = document.getElementsByClassName("hide");
for(var div in divs) {
div.style.display = "none";
}
divid.style.display = "block";
}
return false;
}
有任何想法吗?谢谢!
使用常规for
循环,因为for in
循环将遍历NodeList的其他属性,而不仅仅是遍历元素列表
function showhide(id){
if (document.getElementById) {
var divid = document.getElementById(id);
var divs = document.getElementsByClassName("hide");
for(var i=0;i<divs.length;i++) {
divs[i].style.display = "none";
}
divid.style.display = "block";
}
return false;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句