2014-11-04 158 views
2

我一直在爲這件事而絞盡腦汁,無法想象出我的生活。如何使用Firefox調試器來調試jQuery事件?

這是一個測試頁面我爲這次討論的緣故:

http://jsbin.com/garokalocu

假設這個頁面是非常複雜的,我沒有建立它,我想看到的代碼當用戶點擊「做它」時運行。所以我打開調試器,打開側窗並點擊「事件」。我勾選了點擊事件#execute這是按鈕。

enter image description here

現在我按一下按鈕,代碼到達斷點。但奇怪的是,名爲「鮑勃」已被填補,所以顯然這立馬糾正過去的實際代碼,這裏的土地我:

enter image description here

我不明白是怎麼回事。所以我嘗試了一些其他的東西,Firefox中的一個新功能,我認爲它可能非常方便。如果我檢查代碼,某些DOM元素上幾乎沒有「ev」標籤。據說你可以點擊這些並查看代碼。

enter image description here

嗯,這是徒勞的。我會永遠感激,如果有人可以告訴我如何調試jQuery事件,並看到實際代碼被執行。謝謝!

+3

我不認爲這是一個騙局,實際上在Firefox中有一個特定的功能來處理jQuery事件處理程序,[請參閱此處](http://flailingmonkey.com/view-jquery-and-jquery-live -events-in-firefox-devtools /)和[here](https://hacks.mozilla.org/2014/09/webide-storage-inspector-jquery-events-iframe-switcher-more-firefox-developer-tools -episode-34 /)。請注意,此功能僅適用於Firefox 34,現在位於[Beta](https://www.mozilla.org/zh-CN/firefox/channel/#beta)。 – canuckistani 2014-11-04 03:44:42

+3

@canuckistani謝謝。不,當然沒有人不想做任何思考或挖掘。只需自動投票即可關閉該問題。 – CaptSaltyJack 2014-11-04 04:21:49

+0

爲什麼這會降低投票率? – studro 2014-11-26 00:28:22

回答

4

您將jQuery看作處理程序,因爲您使用jQuery來創建這些偵聽程序。 jQuery代碼在觸發事件時被調用。如果您使用普通的JS addEventListener,它們將在事件中顯示,而不必一步一步地完成。

根據article here該功能即將出現在Firefox 34中,因此如果您使用Firefox測試版,它應該具有您想要的行爲。