为什么新增一行后,鼠标滑过改变背景色不好使了?
为什么新增一行后,鼠标滑过改变背景色不好使了?
2016-08-01
因为你没给添加的行设置鼠标划过的事件。下面这几句就是给节点添加鼠标划过事件的函数(只有初始化时使用到,所以只有一开始三行有反应)
var trs = document.getElementsByTagName('tr');
for(var i=1,l=trs.length;i<l;i++){
trs[i].onmouseover=function(){
this.style.backgroundColor="#ccc";
}
trs[i].onmouseout=function(){
this.style.backgroundColor="#fff";
}
修改方法1:
把以上函数写成一个函数,这里命名为change(),然后这样:
window.onload = function(){
change(); }
function change(){
var trs = document.getElementsByTagName('tr');
for(var i=1,l=trs.length;i<l;i++){
trs[i].onmouseover=function(){
this.style.backgroundColor="#ccc";
}
trs[i].onmouseout=function(){
this.style.backgroundColor="#fff";
}
}
最后在addto函数最后调用change函数
方法2:
直接复制上面代码到addto函数最后面
举报