addEventListener()与removeEventListener()

作者: bkbtp 分类: 前端 发布时间: 2018-07-27 16:02

addEventListener()removeEventListener() 用于处理指定和删除事件处理程序操作。
两者都接受三个参数,即:
addEventListener(“事件名” , “事件处理函数” , “布尔值”)
其中,第三个参数,可以省略,默认为false
true,表示在捕获阶段调用事件处理程序
false,表示在冒泡阶段调用事件处理程序

需要特别注意的是,相同事件绑定和解除,需要使用同一个函数。即第二个参数如果是一个匿名函数,那么 removeEventListener() 方法无法移除已绑定的操作。
window.addEventListener('scroll', () => {
    console.log('1')
})
window.removeEventListener('scroll', () => {
    console.log('1')
})

上面代码看似函数一样,但是其实并不能移除滚动事件。
正确的代码如下:

function myFun() {
    console.log('1')
}
window.addEventListener('scroll', myFun)
window.removeEventListener('scroll', myFun)

发表评论

电子邮件地址不会被公开。 必填项已用*标注

知识共享许可协议
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。