jQueryはオブジェクトに登録されたイベントハンドラーを見つける 質問する

jQueryはオブジェクトに登録されたイベントハンドラーを見つける 質問する

オブジェクトに登録されているイベント ハンドラーを見つける必要があります。

例えば:

$("#el").click(function() {...});
$("#el").mouseover(function() {...});

$("#el")クリックマウスオーバーが登録されています。

それを調べて、イベント ハンドラーを反復処理する関数はありますか?

適切なメソッドを使用して jQuery オブジェクトでそれが不可能である場合、プレーンな DOM オブジェクトでは可能ですか?

ベストアンサー1

jQuery 1.8 以降、イベント データはデータの「パブリック API」から利用できなくなりました。このjQueryブログ投稿代わりにこれを使用してください:

jQuery._data( elem, "events" );

elemjQuery オブジェクトやセレクターではなく、HTML 要素である必要があります。

これは内部の「プライベート」構造なので、変更しないでください。デバッグ目的でのみ使用してください。

jQuery の古いバージョンでは、次の古い方法を使用する必要がある場合があります。

jQuery( elem ).data( "events" );

おすすめ記事