我对Java语言还很陌生,并且将以前论坛中找到的代码拼凑在一起,以汇编我所拥有的东西。我目前正在制作尺寸表,可以查看英寸和厘米版本。单击“英寸和厘米”链接时,我能够获得两个单独的图表以正确查看...但是,当您查看表格并单击相应的链接时,它将折叠。我真诚地感谢任何方向!
var divs = ["Inches", "Centimeters"];
var visibleDivId = null;
function divVisibility(divId) {
if(visibleDivId === divId) {
visibleDivId = null;
} else {
visibleDivId = divId;
}
hideNonVisibleDivs(divId);
}
function hideNonVisibleDivs() {
var i, divId, div;
for(i = 0; i < divs.length; i++) {
divId = divs[i];
div = document.getElementById(divId);
if(visibleDivId === divId) {
div.style.display = "block";
} else {
div.style.display = "none";
}
}
}
答案 0 :(得分:0)
如果您单击的div是当前visibleDivId
,则将visibleDivId
设置为null并隐藏其值与visibleDivId
不匹配的所有div(这对于所有div都是正确的,因为您的visibleDivId
是null
,而您的div都不是null
),因此所有div都被隐藏了。
修复:当您单击的div与visibleDivId
相同时,请勿将null
设置为visibleDivId
。实际上,在这种情况下,您无需执行任何操作。
这应该很好用
var divs = ["Inches", "Centimeters"];
var visibleDivId = null;
function divVisibility(divId) {
if (visibleDivId !== divId) {
visibleDivId = divId;
hideNonVisibleDivs();
}
}
function hideNonVisibleDivs() {
var i, divId, div;
for (i = 0; i < divs.length; i++) {
divId = divs[i];
div = document.getElementById(divId);
if (visibleDivId === divId) {
div.style.display = "block";
} else {
div.style.display = "none";
}
}
}