window.onload = function(){ // 鼠标移动改变背景,可以通过给每行绑定鼠标移上事件和鼠标移除事件来改变所在行背景色。 function color1(obj){ obj.style.backgroundColor = "#f2f2f2"; } function color2(obj){ obj.style.backgroundColor = "#fff"; } var lines = document.getElementsByTagName("tr"); for(var i=0;i<lines.length;i++){ lines[i].setAttribute("onmouseover","color1(this)"); lines[i].setAttribute("onmouseout","color2(this)"); } }
我这么写的,但是运行后没有效果。想问问是否能这么使用?还是我哪里写错了?
我发现很多同学代码中没有考虑对新添加的行增加这个改动背景色的效果。请问如果不能用setAttribute来设置这个鼠标移动效果的话,有什么好方法可以让新添加的行也有这个效果呢?
newnode.setAttribute("onmouseover","style.backgroundColor='#f2f2f2'");
newnode.setAttribute("onmouseout","style.backgroundColor='#fff'");
这样写就可以了
我就想请问你一下onmouseover与onmouseout是一个元素的属性吗?它们只是一个触发事件。。setAttribute()这个函数能改变事件?? 你先搞清楚再提问OK?
setAttribute
是设置属性的,直接设置颜色lines[i].setAttribute("style","background-color:red");