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

js click事件,遇到函数名直接调用了。

js click事件,遇到函数名直接调用了。

眼眸繁星 2018-08-02 10:10:04
代码片段var btn_a = $("#j-btn-a");function alert_a(){    alert("aaaa");}//第一种情况btn_a .on("click",function(){    alert("bbbb");});//第二种情况btn_a .on("click",alert_a());问题描述代码如上,当一个按钮被点击时,在非ie8的浏览器下,click事件执行正常,但我在ie8下,第二种情况,会自动调用alert_a函数,然后弹出了aaaa提示框内容问题可能性我查询了下,这个问题不好提,大概了解,可能是ie的浏览器解析机制问题,click事件中,当遇到function时,后面的不会去执行,遇到函数名时,会去调用执行,这种猜想也不知道对不对,对的话,原理详细是什么?前端新手,哈哈,问题要是很简单,请谅解。
查看完整描述

1 回答

?
慕姐4208626

TA贡献1852条经验 获得超7个赞

写法不符合逻辑,应该是: btn_a.on("click", alert_a); (ps:第二个参数应该传函数进去,不是函数执行的结果)


查看完整回答
反对 回复 2018-09-25
  • 1 回答
  • 0 关注
  • 1460 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信