在for循环中this的问题

来源:-

先森_sxBDLW

2019-10-03 12:32

var oLi = document.getElementById("tab").getElementsByTagName("li");

var oUl = document.getElementById("content").getElementsByTagName("ul");

for(var i = 0; i < oLi.length; i++)

{

oLi[i].index = i;

oLi[i].onmouseover = function ()

{

for(var n = 0; n < oLi.length; n++) oLi[n].className="";

this.className = "current";

for(var n = 0; n < oUl.length; n++) oUl[n].style.display = "none";

oUl[this.index].style.display = "block"

}

}

完整代码如上,为什么要要给每个遍历到的li标签用index属性来附上编号,后面的oUl[this.index].style.display = "block" 中的this.index 换成i的话,就无法实现功能,我想问下是什么原理?


写回答 关注

0回答

还没有人回答问题,可以看看其他问题

JavaScript深入浅出

由浅入深学习JS语言特性,且解析JS常见误区,从入门到掌握

281102 学习 · 1020 问题

查看课程

相似问题