为了账号安全,请及时绑定邮箱和手机立即绑定

为什么鼠标移开和鼠标放置两个事件的绑定一定要再用一个函数打包才能有变色效果,像我这样直接写在onload事件中就只会有最后一行变色。

window.onload = function(){
    var lines = document.getElementsByTagName("tr");
    for(var i = 0; i < lines.length; i++)
    {
        var obj = lines[i];
        obj.onmouseover = function()
         {
             obj.style.backgroundColor = "#f2f2f2";
         }
         obj.onmouseout = function()
         {
             obj.style.backgroundColor = "#fff";
         }

}
}

正在回答

2 回答

我觉得这里涉及到闭包的问题,可以参考mdn上这篇文章

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Closures

0 回复 有任何疑惑可以回复我~

obj.style.backgroundColor这里的obj换成this就好了,我也不知道为什么,是一个还是没涉及知识点

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么鼠标移开和鼠标放置两个事件的绑定一定要再用一个函数打包才能有变色效果,像我这样直接写在onload事件中就只会有最后一行变色。

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号