如果没有 jQuery(或任何库),我如何“命名”一个事件,以便稍后可以分离该事件。例如,我在一个元素上有 3 个点击事件:
target1.addEventListener(click, callback1, false);
target1.addEventListener(click, callback2, false);
target1.addEventListener(click, callback3, false);
我只想解除绑定(bind)callback2。我不关心后备方案。我知道这很简单,但我无法在 jQuery 之外找到任何关于此的 Material (也许我使用了错误的措辞,idk)。
最佳答案
您需要保存事件监听器,然后在以下位置使用它们:
element.removeEventListener(类型、监听器、useCapture)
var div = document.getElementById('div');
var listener = function (event) {
/* do something here */
};
div.addEventListener('click', listener, false);
div.removeEventListener('click', listener, false);
为什么不使用 jQuery?
下面的链接是文档+代码示例: https://developer.mozilla.org/en-US/docs/DOM/element.removeEventListener
关于javascript - 命名点击事件绑定(bind)javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13199936/