201711282236EventTarget.removeEventListener() 的第三個參數

從 Chrome 51 開始, EventTarget.addEventListener() 的第三個參數除了 true / false 的 useCapture ,也可以傳入物件 options 。

當傳入 true / false useCapture 時, EventTarget.addEventListener() 的第三個參數與 EventTarget.removeEventListener() 的第三個參數需相同,才能成功 Remove Event Listener :

var handler = function() { console.log('triggered'); }

document.addEventListener('click', handler, true);
document.removeEventListener('click', handler, true);

當第三個參數為物件 options 時,則只需 options 中的 capture 相同,即可成功 Remove Event Listener :

var handler = function() { console.log('triggered'); }

document.addEventListener('click', handler, { capture: true, passive: true });
document.removeEventListener('click', handler, { capture: true });

EventTarget.addEventListener()EventTarget.removeEventListener() 分別用 true / false useCapture 和 物件 options 亦可:

var handler = function() { console.log('triggered'); }

document.addEventListener('click', handler, { capture: true, passive: true });
document.removeEventListener('click', handler, true);
回應
Google 站內搜尋
BloggerAds
累積 | 今日
loading......
    沒有新回應!





Powered by Xuite