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

两个问题求解答

两个问题 1:window.onload = function(){Highlight();}改成window.onload=Highlight();就不行了,为什么? 2:trs[i].onmouseover=function()            {this.style.backgroundColor=#f2f2f2};   this这个事件的对象不就是trs[i]么,把this改成trs[i]为什么不行

正在回答

2 回答

  1. 可以改成window.onload = Highlight;

    window.onload = function(){Highlight();}这句中的function(){Highlight();}是一个函数直接量,Highlight指向一个函数。

    你写的window.onload=Highlight();可以自己想象着执行下。Highlight()这句执行结果是undefined,因为Highlight这个函数没有返回值。所以你写的代码可以等价于window.onload=undefined;

  2. 函数执行的作用域链中没有i,trs有,因为参考代码的trs是定义在window对象下的。

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

ahao430 提问者

非常感谢!
2016-05-09 回复 有任何疑惑可以回复我~

1.function 对应的有oclick吧  只有点击时才能触发这个事件。

2.改成trs[i]我试着行啊。你再试一试。

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

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468190    人
  • 解答问题       21891    个

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

进入课程

两个问题求解答

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信