JanusL_
2020-03-18 16:34
改写了一下循环部分,不用oLis[i].index=i,而是调用自执行函数并传入立即参数,即可解决闭包问题。
for(var i=0;i<lists.length;i++){
(function(index){
lists[index].onclick=function(){
for(var n=0;n<lists.length;n++){
lists[n].className="";
div[n].className="hide";
}
lists[index].className="on";
div[index].className="";
}
})(i);
}写出来共勉。大家有别的方法也可以写出来大家一起学习。
还没有人回答问题,可以看看其他问题
JavaScript进阶篇
469415 学习 · 22585 问题
相似问题