为什么新增一行后,鼠标滑过改变背景色不好使了?

来源:9-22 编程练习

Aimeesui

2016-08-01 15:10

为什么新增一行后,鼠标滑过改变背景色不好使了?


写回答 关注

1回答

  • 水里有条鱼
    2016-08-01 16:20: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函数最后面


    Aimees...

    谢谢~

    2016-08-01 16:38:21

    共 1 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468194 学习 · 21891 问题

查看课程

相似问题