我在如何从div元素中删除事件侦听器时遇到了困难(实际上已经用完了),每次我生成Class的新实例时都会添加该事件监听器。
class myClass {
myFunc () {
const myDiv= document.querySelector('#div-1')
myDiv.addEventListener('click',doThis,false)
function doThis () {
console.log('Test')
}
}
}
到目前为止,我已经尝试过
myDiv.removeEventListener('click',doThis)
在添加新的eventListener之前,我猜这是行不通的,因为它没有对所讨论的特定实例和函数的引用。然后我尝试了
const myClicker = doThis.bind(this)
,然后使用myClicker变量添加和删除了侦听器,该变量也没有起作用。每次我跑
new myClass()
然后单击#div-1,添加一个新的侦听器,并且不仅多次打印'test'...
谢谢!