我有一个函数,其目标是处理 onClick 事件。
因此,我们有例如 4 个 Span 元素和 4 个 Div 元素。Spans 是选项卡按钮,我想“打开”那些 Div。
第一个 Span onClick 将(打开)更改“block”中第一个 Div 的 style.display,从“none”更改为下一个 Span。
这段代码效果很好,但它只改变了元素的设计。
function activateSup(s) {
var workTable = s.parentNode.parentNode.parentNode.parentNode.parentNode;
var spans = workTable.getElementsByTagName("span");
var supDivs = workTable.getElementsByClassName("supDiv");
for (var i = 0; i < spans.length; i++) {
spans[i].style.backgroundColor = "";
spans[i].style.border = "";
}
s.style.backgroundColor = "#5eac58";
s.style.border = "2px solid #336633";
}
我试图将下面的代码添加到我的函数中以实现我想要的,但它不起作用。
var getIndex = function(s) {
for (var index = 0; s != s.parentNode.childNodes[index]; index++);
return index;
}
for (var d = 0; d < supDivs.length; d++) {
if (getIndex == d) {
supDivs[d].style.display = "block";
}
else {
supDivs[d].style.display = "none";
}
}