Iva*_*oli 0 javascript event-listener addeventlistener removeeventlistener
我正在尝试使用 javascript 向按钮添加和删除事件侦听器
打回来:
let callback = (id) => alert(`This is a test Callback with id : ${id}`);
Run Code Online (Sandbox Code Playgroud)
当我将它与这样的事件侦听器一起使用时,它会起作用:
document.querySelector('#button').addEventListener('click', () => callback(id));
Run Code Online (Sandbox Code Playgroud)
但是用这种方法我不能,removeEventListener因为arrow function.
是否有适当的解决方法?
您需要引用完全相同的函数对象,才能再次删除该特定事件侦听器。
因此,您必须将它存储到一个变量中,然后在 addEventListener 和 removeEventListener 调用中使用该变量。
let foo = () => callback(id);
document.querySelector('#button').addEventListener('click', foo);
// ...
document.querySelector('#button').removeEventListener('click', foo);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
275 次 |
| 最近记录: |