jQuery を使用したイベント バインディングの取得
Web 開発では、ユーザーの操作に応答するために要素にイベント ハンドラーをアタッチすることが必要になることがよくあります。 jQuery はイベントを要素にバインドする便利な方法を提供しますが、特定の要素にバインドされたすべてのイベントのリストを取得するにはどうすればよいですか?
2 つのイベント ハンドラーがリンクにバインドされている次の例を考えてみましょう。
<a href='#'>
$(function() { $('#elm').click(_f); $('#elm').mouseover(_m); }); function _f() { alert('clicked'); } function _m() { alert('mouse over'); }
バインドされたイベントの取得
要素にバインドされたイベントのリストを取得するために、jQuery は $._data メソッドを提供します。このメソッドは、jQuery によってバインドされたイベントを含む、要素に関連付けられた内部データにアクセスするために使用できます。
$._data($('#elm')[0], "events");
$._data の出力は、要素にバインドされたイベントを含むオブジェクトになります。各イベントはハンドラーの配列として表されます。たとえば、上記のコードの結果は次のようになります。
{ "click": [function() { alert('clicked'); }], "mouseover": [function() { alert('mouse over'); }] }
さらなる探索
最新バージョンの jQuery では、$._data は内部使用です。唯一の方法。イベント バインディングを取得するには、ブラウザの開発者ツールで Event Bubble Viewer を使用することもできます。 Chrome では、コンソールでイベント ハンドラーを右クリックし、[関数定義の表示] を選択すると、イベント ハンドラーが定義されているコードが表示されます。
以上がjQueryを使用して特定の要素へのイベントバインディングを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。