JS监听事件的叠加和移除功能
html DOM元素有很多on开头的监听事件,如onload、onclick等,见DOM事件列表。但是同一种事件,后面注册的会覆盖前面的:
window.onresize = function(){ alert(1); } window.onresize = function(){ alert(2); } // 改变窗口大小时,只会弹出2
addEventListener监听
利用addEventListener添加监听事件,可以重复添加,并不会互相覆盖:
window.addEventListener("resize",function(){ alert(1) }) window.addEventListener("resize",function(){ alert(2) }) // 改变窗口大小时,先后弹出1和2
注意这里面的事件是不带"on"前缀的。
removeEventListener移除监听
removeEventListener跟addEventListener相对应,用于移除事件监听。
如果要移除事件句柄,addEventListener()
的执行函数必须使用外部具名函数,匿名函数事件是无法移除的。
// 匿名函数事件无法移除 window.addEventListener("resize",function(){ alert(1) }) // 监听具名函数事件 function myResize(){ alert(2) } window.addEventListener("resize",myResize) // 移除事件监听 window.removeEventListener("resize",myResize)
总结
以上所述是小编给大家介绍的JS监听事件的叠加和移除,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
相关文章
BootStrap Fileinput插件和Bootstrap table表格插件相结合实现文件上传、预览、提交的导入E
这篇文章主要介绍了BootStrap Fileinput插件和Bootstrap table表格插件相结合实现文件上传、预览、提交的导入Excel数据操作步骤,需要的朋友可以参考下2017-08-08全面解析JavaScript中offsetLeft、offsetTop的用法
本文主要介绍了全面解析JavaScript中offsetLeft、offsetTop的用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-04-04
最新评论