2010-04-29 45 views
5

我發現一個網站,其中有一些我需要的功能,在JavaScript中。它使用jQuery,當我點擊一個標籤時,一些函數被執行,所以jQuery爲標籤設置了一個綁定。但是我怎樣才能找出哪個函數與它綁定?螢火蟲沒有拿出來給我:(如何查看哪個jQuery函數綁定到元素?

回答

9

如果你想要說看到一個元素click事件處理程序,你會得到的第一個處理程序是這樣的:

$("#element").data("events").click[0].handler 

這將使你的。功能運行Here's an example page showing that

下面是一個例子:

$("a").click(function() { 
    alert($("a").data("events").click[0].handler); 
});​ 

在點擊,這將提醒:function() { alert($("a").data("events").click[0].handler); }

這只是使用click的一個示例,但無論您需要它用於作品,mouseenterfocus,無論事件可能是什麼,包括自定義事件。

順便說一句,如果你在一個元素或集合中的所有事件處理程序要循環,這會工作,只是選擇更改爲你以後(here's the same example updated to include this):

$.each($("a").data("events"), function(i, e) { 
    $.each(e, function(j, h) { 
    alert('Event: ' + i + '\nHandler:\n' + h.handler); 
    }); 
}); 

+0

+1優秀的答案。 – 2010-04-29 23:54:03

+0

非常敏捷的方法,謝謝! – teMkaa 2010-04-30 09:00:10

1

您是否嘗試過使用FireQuery?應該安裝在每個人的Firefox/Firebug安裝程序中。

相關問題