如果没有jQuery(或任何库),我如何“命名”一个事件,以便我可以稍后分离该事件。对于示例,我在一个元素上有3个点击事件:
target1.addEventListener(click, callback1, false);
target1.addEventListener(click, callback2, false);
target1.addEventListener(click, callback3, false);
我想取消绑定callback2。我不关注后备。我知道这很简单,但我不能在jQuery之外找到任何材料(也许我使用的是错误的措辞,idk)。
答案 0 :(得分:1)
您需要保存您的事件侦听器,然后在以下位置使用它们:
element.removeEventListener(type, listener, 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