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 相关文章推荐
JS定时器实例
Apr 17 Javascript
chrome浏览器不支持onmouseleave事件的解决技巧
May 31 Javascript
jQuery+ajax实现鼠标单击修改内容的方法
Jun 27 Javascript
浏览器检测JS代码(兼容目前各大主流浏览器)
Feb 21 Javascript
BootStrap智能表单实战系列(十一)级联下拉的支持
Jun 13 Javascript
js实现精确到毫秒的倒计时效果
Aug 05 Javascript
JS使用插件cryptojs进行加密解密数据实例
May 11 Javascript
shiro授权的实现原理
Sep 21 Javascript
关于Vue在ie10下空白页的debug小结
May 02 Javascript
angularJS自定义directive之带参方法传递详解
Oct 09 Javascript
html+vue.js 实现漂亮分页功能可兼容IE
Nov 07 Javascript
vue中div禁止点击事件的实现
Apr 02 Vue.js
微信小程序自定义弹窗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程序员编程注意事项
2008/04/10 PHP
Thinkphp搭建包括JS多语言的多语言项目实现方法
2014/11/24 PHP
php中引用符号(&)的使用详细介绍
2016/12/06 PHP
Zend Framework分发器用法示例
2016/12/11 PHP
php头像上传预览实例代码
2017/05/02 PHP
根据当前时间在jsp页面上显示上午或下午
2014/08/18 Javascript
javascript实现支持移动设备画廊
2015/08/24 Javascript
JavaScript实现点击文本自动定位到下拉框选中操作
2016/06/15 Javascript
JavaScript设计模式之策略模式详解
2017/06/09 Javascript
JS作用域链详解
2017/06/26 Javascript
微信小程序中setInterval的使用方法
2017/09/29 Javascript
浅析JS抽象工厂模式
2017/12/14 Javascript
原生js调用json方法总结
2018/02/22 Javascript
VUE-cli3使用 svg-sprite-loader
2018/10/20 Javascript
利用weixin-java-miniapp生成小程序码并直接返回图片文件流的方法
2019/03/29 Javascript
js实现简单分页导航栏效果
2019/06/28 Javascript
layer更改皮肤的实现方法
2019/09/11 Javascript
layui 图片上传+表单提交+ Spring MVC的实例
2019/09/21 Javascript
详解vue之自行实现派发与广播(dispatch与broadcast)
2021/01/19 Vue.js
跟老齐学Python之画圈还不简单吗?
2014/09/20 Python
对python中的for循环和range内置函数详解
2018/04/17 Python
对Pycharm创建py文件时自定义头部模板的方法详解
2019/02/12 Python
浅谈python之高阶函数和匿名函数
2019/03/21 Python
python实现祝福弹窗效果
2019/04/07 Python
使用python list 查找所有匹配元素的位置实例
2019/06/11 Python
np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴
2019/11/30 Python
python实现图像全景拼接
2020/03/27 Python
详解Python中Pyyaml模块的使用
2020/10/08 Python
菲律宾旅游网站:Expedia菲律宾
2017/10/11 全球购物
冰淇淋店创业计划书范文
2013/12/27 职场文书
小学先进集体事迹材料
2014/05/31 职场文书
单位委托书格式范本
2014/09/29 职场文书
2015应届毕业生求职信范文
2015/03/20 职场文书
催款通知书范文
2015/04/17 职场文书
学生退学证明
2015/06/23 职场文书
浅谈Python中的函数(def)及参数传递操作
2021/05/25 Python