当前位置:优学网  >  在线题库

removeEventListener不使用bind()

发表时间:2022-06-28 00:39:23 阅读:55

我完全不知所措.Remove event listener无法工作,即使我传递的变量与我传递给add event listener的变量完全相同.

如果将"绑定"目标保存到变量,然后在两个添加/删除事件侦听器中引用完全相同的变量,为什么它不起作用?此外,我没有使用捕获.

我的代码:

const confirmTargets_ = this.confirmTargets.bind(this); // TODO NOT WORKING
$confirmBtn.removeEventListener("click", confirmTargets_); // TODO NOT WORKING
// this.confirmTargets_ = this.confirmTargets.bind(this); // TODO NOT WORKING

if (this.targets.length > 0 && this.targets.length <= this.scopeNum) {
  $confirmBtn.classList.add("active");
  $confirmBtn.addEventListener("click", confirmTargets_, { once: true });
} else {
  console.log(`REMOVE THE EVENT LISTENER!!!!!!!`);
  // $confirmBtn.classList.remove("active");
}
🎖️ 优质答案
相关问题