qq_泥巴的城_0
2017-09-20 17:28
鼠标移到不同行上时背景色改为色值为 #f2f2f2,移开鼠标时则恢复为原背景色 #fff 。
这里的代码为什么要用this,而不能是trs[i].style.backgroundColor = "#f2f2f2";
window.onload = function(){
var trs = document.getElementsByTagName('tr');
for(var i = 1; i < trs.length; i++){
trs[i].onmouseover = function(){
this.style.backgroundColor = "#f2f2f2";
}
trs[i].onmouseout = function(){
this.style.backgroundColor = "#fff";
}
}
}
因为JS里的对象是全局的,如果使用trs[i],这里的i的值一直是走完循环后的值,也就是:trs.length的值,所以trs[i]一直为undefined
JavaScript进阶篇
468194 学习 · 21891 问题
相似问题