2012-01-07 27 views
1

JavaScript - 如何從事件對象中檢測useCapture的值?JavaScript - 如何從事件對象中檢測「useCapture」的值?

我做了一個函數,可以在觸發一次或任意次數後刪除事件偵聽器。

這是我有:

/*jslint browser: true, vars: true, white: true, maxerr: 50, indent: 4 */ 
(function() 
{ 
    "use strict"; 

    function removeEventListenerAfterFiring(numberOfTimes, callback, useCapture) 
    { 
     var count = 0; 
     return function listener(event) 
     { 
      count += 1; 

      if (count >= numberOfTimes) 
      { 
       event.target.removeEventListener(event.type, listener, useCapture); 
      } 

      callback(); 
     }; 
    } 

    function functionName() 
    { 
     // Code here. 
    } 

    window.addEventListener("DOMContentLoaded", removeEventListenerAfterFiring(1, functionName, false), false); 
}()); 

有沒有一種方法來檢測的useCapture值,這樣我就不必把它傳遞給removeEventListenerAfterFiring功能?

回答

1

去簡單的方法;刪除兩個。

event.target.removeEventListener(event.type, listener, false); 
event.target.removeEventListener(event.type, listener, true);