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 页面执行时间计算代码
Mar 04 Javascript
jquery 读取页面load get post ajax 四种方式代码写法
Apr 02 Javascript
基于jquery的bankInput银行卡账号格式化
Aug 22 Javascript
使用jquery修改表单的提交地址基本思路
Jun 04 Javascript
jQuery实现自定义右键菜单的树状菜单效果
Sep 02 Javascript
BootStrap glyphicons 字体图标实现方法
May 01 Javascript
Web程序员必备的7个JavaScript函数
Jun 14 Javascript
深入理解JS DOM事件机制
Aug 06 Javascript
基于vue的fullpage.js单页滚动插件
Mar 20 Javascript
node.js+jQuery实现用户登录注册AJAX交互
Apr 28 jQuery
通俗解释JavaScript正则表达式快速记忆
Aug 23 Javascript
JS把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式
Jul 10 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
玩转虚拟域名◎+ .
2006/10/09 PHP
php实现scws中文分词搜索的方法
2015/12/25 PHP
PHP实现八皇后算法
2019/05/06 PHP
laravel框架中控制器的创建和使用方法分析
2019/11/23 PHP
基于jQuery的获得各种控件Value的方法
2010/11/19 Javascript
jQuery实现鼠标可拖动调整表格列宽度
2014/05/26 Javascript
JS替换字符串中字符即替换全部而不是第一个
2014/06/04 Javascript
jquery使用经验小结
2015/05/20 Javascript
js鼠标点击按钮切换图片-图片自动切换-点击左右按钮切换特效代码
2015/09/02 Javascript
JS中使用FormData上传文件、图片的方法
2016/08/07 Javascript
Bootstrap table两种分页示例
2016/12/23 Javascript
微信小程序之拖拽排序(代码分享)
2017/01/21 Javascript
一篇看懂vuejs的状态管理神器 vuex状态管理模式
2017/04/20 Javascript
高性能的javascript之加载顺序与执行原理篇
2018/01/14 Javascript
纯js封装的ajax功能函数与用法示例
2018/05/14 Javascript
如何制作一个Node命令行图像识别工具
2018/12/12 Javascript
详解Vue中watch对象内属性的方法
2019/02/01 Javascript
Promise扫盲贴
2019/06/24 Javascript
详解利用nodejs对本地json文件进行增删改查
2019/09/20 NodeJs
vue 通过绑定事件获取当前行的id操作
2020/07/27 Javascript
解决vue自定义指令导致的内存泄漏问题
2020/08/04 Javascript
[51:52]Liquid vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.24
2019/09/10 DOTA
Python使用自带的ConfigParser模块读写ini配置文件
2016/06/26 Python
Python与R语言的简要对比
2017/11/14 Python
python获取时间及时间格式转换问题实例代码详解
2018/12/06 Python
浅谈pycharm使用及设置方法
2019/09/09 Python
在Python中等距取出一个数组其中n个数的实现方式
2019/11/27 Python
python实现提取COCO,VOC数据集中特定的类
2020/03/10 Python
python爬虫可以爬什么
2020/06/16 Python
python 基于wx实现音乐播放
2020/11/24 Python
绿化先进工作者事迹材料
2014/01/30 职场文书
十八大感想感言
2014/02/10 职场文书
关于公司年会的开幕词
2016/03/04 职场文书
2016年领导干部廉政承诺书
2016/03/24 职场文书
评测 | 大屏显示带收音机的高端音箱,JBL TUNE2便携式插卡音箱实测
2021/04/24 无线电
在Django中使用MQTT的方法
2021/05/10 Python