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 相关文章推荐
Mootools 图片展示插件(lightbox,ImageMenu)收集集合
May 21 Javascript
JS中图片缓冲loading技术的实例代码
Aug 29 Javascript
js获取视频时长代码
Apr 10 Javascript
浅谈页面装载js及性能分析方法
Dec 09 Javascript
浅谈JavaScript 执行环境、作用域及垃圾回收
May 31 Javascript
javascript正则表达式中分组详解
Jul 17 Javascript
JavaScript实现的XML与JSON互转功能详解
Feb 16 Javascript
vue学习教程之带你一步步详细解析vue-cli
Dec 26 Javascript
Angularjs Promise实例详解
Mar 15 Javascript
vue组件表单数据回显验证及提交的实例代码
Aug 30 Javascript
Vue 第三方字体图标引入 Font Awesome的方法
Sep 28 Javascript
微信小程序template模板与component组件的区别和使用详解
May 22 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自定义函数实现统计中文字符串长度的方法小结
2017/04/15 PHP
Display SQL Server Login Mode
2007/06/21 Javascript
[HTML/CSS/Javascript]WWTJS
2007/09/25 Javascript
js跑马灯代码(自写)
2013/04/17 Javascript
jquery-syntax动态语法着色示例代码
2014/05/14 Javascript
jQuery使用fadeout实现元素渐隐效果的方法
2015/03/27 Javascript
基于vuejs实现一个todolist项目
2017/04/11 Javascript
微信小程序 监听手势滑动切换页面实例详解
2017/06/15 Javascript
input框中自动展示当前日期yyyy/mm/dd的实现方法
2017/07/06 Javascript
微信JSSDK调用微信扫一扫功能的方法
2017/07/25 Javascript
基于vue.js中关于下拉框的值默认及绑定问题
2018/08/22 Javascript
vue项目前端知识点整理【收藏】
2019/05/13 Javascript
jquery.pager.js分页实现详解
2019/07/29 jQuery
JS实现拼图游戏
2021/01/29 Javascript
基于vue实现探探滑动组件功能
2020/05/29 Javascript
跟老齐学Python之玩转字符串(1)
2014/09/14 Python
Python入门篇之编程习惯与特点
2014/10/17 Python
python 判断网络连通的实现方法
2018/04/22 Python
python 划分数据集为训练集和测试集的方法
2018/12/11 Python
Django调用百度AI接口实现人脸注册登录代码实例
2020/04/23 Python
使用pygame实现垃圾分类小游戏功能(已获校级二等奖)
2020/07/23 Python
python+requests实现接口测试的完整步骤
2020/10/27 Python
python制作一个简单的gui 数据库查询界面
2020/11/19 Python
python中time包实例详解
2021/02/02 Python
MyBag中文网:英国著名的时尚包袋电商零售网站
2020/07/31 全球购物
金智子午JAVA面试题
2015/09/04 面试题
应届大学生的推荐信
2013/11/20 职场文书
高中微机老师自我鉴定
2014/02/16 职场文书
车队司机自我鉴定
2014/03/02 职场文书
销售求职信范文
2014/05/26 职场文书
化工专业求职信
2014/07/01 职场文书
检讨书范文2000字
2015/01/28 职场文书
男方家长婚礼答谢词
2015/09/29 职场文书
教师岗位说明书
2015/09/30 职场文书
班级元旦晚会开幕词
2016/03/04 职场文书
Python调用腾讯API实现人脸身份证比对功能
2022/04/04 Python