javascript - 如何在JS严格模式下删除当前事件监听器(没有被调用者)

标签 javascript event-listener strict-mode

问题:事件监听器想要将其自身从目标监听器列表中删除。 监听器可以是匿名函数和/或动态生成(闭包或绑定(bind))

这是一个解决方案(在“严格模式”下不起作用): (“点击”事件示例)

function(ev){
   // .... some stuff
   ev.target.removeEventListener("click",arguments.callee);
}

但这在 ES5 严格模式下不起作用。

问题:还有其他解决方案吗?

最佳答案

只需命名它 - 它甚至适用于函数表达式。

… function myListener(ev){
   // … some stuff
   ev.target.removeEventListener("click", myListener);
} …

关于javascript - 如何在JS严格模式下删除当前事件监听器(没有被调用者),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43544204/

相关文章:

javascript - 如何正确地传递 immutablejs 对象

javascript - 为什么我的脚本第一行出现 JS 错误语法错误 : invalid or unexpected token?

javascript - 将 "strict mode"包装在 IIFE(自调用)表达式中是一种好习惯吗?

javascript - 如何识别javascript不可删除的属性?

reactjs - material-ui Drawer - findDOMNode 在 StrictMode 中已弃用

javascript - 尝试创建一个准时更新功能

Javascript 抛出错误 is null 或 not an object

javascript - 重定向到另一个站点 Angular

jQuery .val() 忽略输入的第一个字符

hibernate - 在 dropwizard hibernate 中自动更新实体上的创建/更新日期字段