好多不懂 求解答 关于元素隐藏的
window.onload = function() {
var oUl1 = document.getElementById("ul1");
var aLi = oUl1.getElementsByTagName("li");
var oDiv = document.getElementById("tab-list");
var aDiv = oDiv.getElementsByTagName("div");
for(var i = 0; i < aLi.length; i++) {
aLi[i].index = i;
aLi[i].onmouseover = function() {
for(var i = 0; i < aLi.length; i++) {
aLi[i].className = "";
}
this.className = "active";
for(var j = 0; j < aDiv.length; j++) {
aDiv[j].className = "hide";
}
aDiv[this.index].className = "show";//为什么不能直接用aDIV[i].className = "show";
}
}
}
这是排名第一的答案,有几点不明白
1、为什么不能直接用aDIV[i].className = "show";而非要另外用一个index,前者我试过 不行 怀疑是i的作用域问题,也不知道对不对,求解答
2、另外aLi[i].index = i;这种写法有点不明白,是元素的数据结构就有index这一项吗?还是别的原因?任何元素都可以这样吗?