2017-10-27 9 views
0

私はオブジェクトを反復する方法を探しています。getEventListeners(obj)が返します。 このようにして、イベントリスナのタイプを繰り返したり、チェックされた要素にそれらが存在するかどうかを確認するための特定のコードは必要ありません。 私の目標は、要素からいくつかのイベントリスナーを削除することです。たとえば、マウスに関連するすべてのものを削除し、他のものを保持します。getEventListeners()戻りオブジェクト

おかげ

答えて

0

getEventListeners()は、単純なJSオブジェクトを返します、あなたはこのようなオブジェクトを反復処理することができます。

var listeners = window.getEventListeners(document.body); 
Object.keys(listeners).forEach(event => { 
    console.log(event, listeners[event]); 
}); 

しかし、それgetEventListeners方法は、唯一のクロムでご利用の場合は何かわから利用できないように見えます、イベントリスナーを取得するために別のメソッドを使用することができます。

+0

ありがとうございますが、私はこれがクロム固有であることを認識していませんでした:(しかし、これは質問に対する答えです。 – IAmFry

0

getEventListeners(obj)は、Google Chrome specific Command Line Tool featureです。これは、手動でコンソールに入力するときにChrome Dev Tools内でのみこのメッセージを使用できることを意味します。このメソッドを実際のJavaScriptソースコードで使用することはできません。

あなたが説明したことを達成したい場合は、AFAIKではリスナーを手動で追跡する必要があります。詳細については、this answerを参照してください。

関連する問題