问答详情
源自:9-22 编程练习

关于函数调用

到了练习的时候会发现之前有好多学了之后不会用,有点觉得自己不适合编程,为什么添加经过改变背景要嵌套一个函数,还有for循环中为什么设置两次背景颜色

 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";
                }
          }
        }

求解答

提问者:imooc翎灵霸 2018-04-14 14:23

个回答

  • solace_lee
    2018-04-16 15:19:49
    已采纳

    onmouseover和onmouseout的使用方法就是当鼠标移到对象上和移出对象外这两种状态就调用JavaScript函数,不能直接执行函数中的命令,所以要嵌套一个函数。

    设置两次背景颜色分别是移到对象上设置背景色#f2f2f2,和移出时设置背景色为#fff。如果只设置移到对象上变色成#f2f2f2,那么鼠标移出对象后就还是#f2f2f2而不是#fff。所以要分别设置移入和移除时改变背景色。