一个很诡异的js问题

囧思 2011-02-12 11:24:02

document.addEventListener("mouseove", function(){ **** }, true);




function func(){
*****
}
document.addEventListener("mouseove", func(), true);


这两个一摸一样的代码,执行结果却不一样,第二种无法绑定,并且一载入就把那个func()给执行了。。
...全文
66 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
strife013 2011-02-12
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 crazywa 的回复:]
第二个是个错误语句。。
你绑定的是return出来的东西。。或者是。undefined。。。。
[/Quote]

恩第二个是错的
varlj 2011-02-12
  • 打赏
  • 举报
回复
第二种,你多了个圆括号,相当于调用本函数,所以直接执行了。绑定事件需要的函数的名字(有点类似函数指针)
打字员 2011-02-12
  • 打赏
  • 举报
回复

document.addEventListener("mouseove", func(), true);


晕,你这样写明显不对撒。。。

fun(),这是直接执行方法了。

应该把函数名作为参数赋为给addEventListener方法。

document.addEventListener("mouseove", func, true);
wangchangbing 2011-02-12
  • 打赏
  • 举报
回复
不要打括号吗 括号了就是执行这个函数 没有括号才是绑定
Crazywa 2011-02-12
  • 打赏
  • 举报
回复
第二个是个错误语句。。
你绑定的是return出来的东西。。或者是。undefined。。。。
yibey 2011-02-12
  • 打赏
  • 举报
回复
第二种是绑定了至于func函数,至于为什么会执行的话,应该document的mouseove事件,可能有什么特殊性吧

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧