当前位置: 移动技术网 > IT编程>开发语言>JavaScript > JS监听事件的叠加和移除功能

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

2018年11月30日  | 移动技术网IT编程  | 我要评论

html dom元素有很多on开头的监听事件,如onload、onclick等,见。但是同一种事件,后面注册的会覆盖前面的:

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监听事件的叠加和移除,希望对大家有所帮助

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网