var li = document.querySelectorAll('li');for (var i = 0 ; i < 11 ; i ++){ li[i].addEventListener('mouseover', function () { li[i].style.backgroundColor = 'white'; console.log(i); }); }希望的效果是鼠标经过标签的时候改变颜色通过addevenlistener添加mouseover实现但是现在的效果是不管鼠标经过哪个liconsolelog输出的都是11 也就是只有最后一个变颜色
1 回答
慕斯709654
TA贡献1840条经验 获得超5个赞
其实写成这样就好了吧:
var li = document.querySelectorAll('li');
for (var i = 0 ; i < 11 ; i ++){
li[i].onmouseover = function () {
this.style.backgroundColor = 'white';
};
}
(虽然知道是闭包题,但是能解决问题不就得了么。。)
添加回答
举报
0/150
提交
取消