关于代码的疑问

来源:9-22 编程练习

学渣君丶

2016-07-21 10:01

改变颜色为什么需要另设一个函数

window.onload = function(){

        var tr = document.getElementsByTagName("tr");

        for (var i = 0; i < tr.length; i++) {

          tr[i].onmouseover=function(){

            tr[i].style.backgroundColor="#f2f2f2";

          }

          tr[i].onmouseout=function(){

            tr[i].style.backgroundColor="#fff";

          }

        }

        }

为什么上面这种方法不行,一定要用下面的方法呢

window.onload = function(){

        var tr=document.getElementsByTagName("tr");

          for(var i= 0;i<tr.length;i++)

          {

            bgcChange(tr[i]);

          }

        }          

     function bgcChange(obj)

     {

        obj.onmouseover=function(){

            obj.style.backgroundColor="#f2f2f2";

        }

        obj.onmouseout=function(){

            obj.style.backgroundColor="#fff";

        }

     }

   



写回答 关注

2回答

  • qq_岂能尽如人意但求无愧于心_0
    2016-07-21 10:54:22

    我觉得是得先遍历所有的行,所以才可以去画上去的时候加上颜色吧,。不然不确定行数。

  • ZX125
    2016-07-21 10:50:03

    因为每一行的动作是独立的,而且行数不确定

JavaScript进阶篇

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

468060 学习 · 21891 问题

查看课程

相似问题