JS监听事件的叠加和移除功能


Posted in Javascript onNovember 19, 2018

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监听事件的叠加和移除,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript 实现??打印?理
Apr 28 Javascript
jquery数组过滤筛选方法grep()简介
Jun 06 Javascript
Javascript中this的用法详解
Sep 22 Javascript
jQuery插件MixItUp实现动画过滤和排序
Apr 12 Javascript
js实现简洁的TAB滑动门效果代码
Sep 06 Javascript
js和jquery分别验证单选框、复选框、下拉框
Dec 17 Javascript
jQuery图片前后对比插件beforeAfter用法示例【附demo源码下载】
Sep 20 Javascript
Angular 2 ngForm中的ngModel、[ngModel]和[(ngModel)]的写法
Jun 29 Javascript
使用live-server快速搭建本地服务器+自动刷新的方法
Mar 09 Javascript
JavaScript引用类型Function实例详解
Aug 09 Javascript
js实现for循环跳过undefined值示例
Jul 02 Javascript
JavaScript 监听组合按键思路及代码实现
Jul 28 Javascript
微信小程序自定义弹窗wcPop插件
Nov 19 #Javascript
Vue.js 使用v-cloak后仍显示变量的解决方法
Nov 19 #Javascript
Vue.js 中的 v-cloak 指令及使用详解
Nov 19 #Javascript
浅析Vue.js 中的条件渲染指令
Nov 19 #Javascript
Vue.js 中的 v-show 指令及用法详解
Nov 19 #Javascript
深入浅析Vue.js 中的 v-for 列表渲染指令
Nov 19 #Javascript
为什么说JavaScript预解释是一种毫无节操的机制详析
Nov 18 #Javascript
You might like
PHP下MAIL的另一解决方案
2006/10/09 PHP
frename PHP 灵活文件命名函数 frename
2009/09/09 PHP
PHPMailer的主要功能特点和简单使用说明
2014/02/17 PHP
laravel5.4生成验证码的实例讲解
2017/08/05 PHP
用js 让图片在 div或dl里 居中,底部对齐
2008/01/21 Javascript
基于jquery的一个拖拽到指定区域内的效果
2011/09/21 Javascript
JQuery调webservice实现邮箱验证(检测是否可用)
2013/05/21 Javascript
jquery中one()方法的用法实例
2015/01/16 Javascript
JS 对象属性相关(检查属性、枚举属性等)
2015/04/05 Javascript
js实现带有介绍的Select列表菜单实例
2015/08/18 Javascript
JavaScript获取function所有参数名的方法
2015/10/30 Javascript
JavaScript基础教程——入门必看篇
2016/05/20 Javascript
原生js FileReader对象实现图片上传本地预览效果
2020/03/27 Javascript
详解JS数组Reduce()方法详解及高级技巧
2017/08/18 Javascript
JavaScript实现多叉树的递归遍历和非递归遍历算法操作示例
2018/02/08 Javascript
前端天气插件tpwidget使用方法详解
2019/06/24 Javascript
JSON stringify方法原理及实例解析
2020/10/23 Javascript
浅谈numpy中linspace的用法 (等差数列创建函数)
2017/06/07 Python
基于Python开发chrome插件的方法分析
2018/07/07 Python
一个可以套路别人的python小程序实例代码
2019/04/09 Python
Python统计一个字符串中每个字符出现了多少次的方法【字符串转换为列表再统计】
2019/05/05 Python
Python实现加密接口测试方法步骤详解
2020/06/05 Python
python如何导入依赖包
2020/07/13 Python
Python-openpyxl表格读取写入的案例详解
2020/11/02 Python
在python3.9下如何安装scrapy的方法
2021/02/03 Python
索尼巴西商店:Sony巴西
2019/06/21 全球购物
怎样有效的进行自我评价
2013/10/06 职场文书
思想汇报范文
2013/11/04 职场文书
高中运动会广播稿
2014/01/21 职场文书
企业宣传策划方案
2014/05/29 职场文书
金融管理专业求职信
2014/07/10 职场文书
售后客服个人自我评价
2014/09/14 职场文书
电子商务专业求职信范文
2015/03/19 职场文书
罚款通知怎么写
2015/04/22 职场文书
Python字符串格式化方式
2022/04/07 Python
springboot实现string转json json里面带数组
2022/06/16 Java/Android