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

addEventListener vs onclick

addEventListener vs onclick

炎炎设计 2019-05-24 16:30:17
addEventListener vs onclickaddEventListener和之间有什么区别onclick?var h = document.getElementById("a");h.onclick = dothing1;h.addEventListener("click", dothing2);上面的代码一起存在于一个单独的.js文件中,它们都完美地工作。
查看完整描述

4 回答

?
holdtom

TA贡献1805条经验 获得超10个赞

如果您有另外两个功能,您可以看到差异:


var h = document.getElementById('a');

h.onclick = doThing_1;

h.onclick = doThing_2;


h.addEventListener('click', doThing_3);

h.addEventListener('click', doThing_4);

功能2,3和4工作,但1不工作。这是因为addEventListener不会覆盖现有的事件处理程序,而是onclick覆盖任何现有的onclick = fn事件处理程序。


当然,另一个显着的区别是,它onclick始终有效,而addEventListener在版本9之前的Internet Explorer中不起作用。您可以在IE <9中使用类似的attachEvent(语法略有不同)。


查看完整回答
反对 回复 2019-05-24
  • 4 回答
  • 0 关注
  • 756 浏览
慕课专栏
更多

添加回答

举报

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