如何在不命名的情况下从匿名函数中删除事件监听器?

时间:2018-09-08 11:08:24

标签: javascript

我需要从函数中删除事件监听器。
我在这里和Google上进行了搜索,但是发现的所有解决方案都是对创建的每个函数进行引用或命名,但是我的函数是在循环中创建的,因此无法正常工作:

.overlay {
  z-index: 2;
  background: white;
  opacity: 0.5;
}

是否可以将事件侦听器添加到循环内创建的每个元素中,并在以后进行区分?

我可以删除事件侦听器而无需命名吗?

1 个答案:

答案 0 :(得分:0)

removeEventListener要求您传递对函数的引用,而不是函数的名称。

因此,一旦将函数本身保存到任何变量(例如,具有链接到索引的数组或对象)中,您以后就可以将其删除。

您还可以将单个侦听器放在公共父节点上,并通过更改某些元素的属性来禁用/启用对特定元素的处理