6

質問が言ったように、特定の要素にバインドされたイベントのリストが必要です。

クリック、マウスオーバーなどのイベントが、dom の読み込み時にその要素にバインドされていることを意味します。

(ばか) 例:

$("#element").click(function()
{
    //stuff
});
$("#element").mouseover(function()
{
    //stuff
});
$("#element").focus(function()
{
    //stuff
});

結果:

クリック、マウスオーバー、フォーカス

4

2 に答える 2

13

すべてのイベントが配列に追加されます。

この配列には、jQuery データ メソッドを使用してアクセスできます。

$("#element").data('events')

1 つのオブジェクトのすべてのイベントを fireBug に記録するには、次のように入力します。

console.log ( $("#element").data('events') )

そして、バインドされたすべてのイベントのリストを取得します。


アップデート:

jQuery 1.8以降では、内部の jQuery データ オブジェクトを調べる必要があります。

$("#element").each(function(){console.log($._data(this).events);});
// or
console.log($._data($("#element")[0]).events);
于 2009-11-13T14:59:41.653 に答える
2

からアクセスできますelement.data('events');。例:

var events = element.data('events');
for (var type in events) {
    // `type` is "click", "mouseover", "change", etc.
    for (var handler in events[type]) {
        // `handler` is the associated function.
    }
}
于 2009-11-13T15:01:26.800 に答える