簡體   English   中英

在離開網頁時,我可以使用什么工具找出正在調用的JavaScript事件?

[英]What tool can I use to find out what JavaScript events are being called when leaving a web page?

我有一組包含大量JavaScript的頁面:表排序,AJAX調用,自動完成,動態隱藏和顯示頁面區域等……我所看到的問題是當所述頁面上的數據變大時離開頁面時出現延遲(瀏覽器凍結)。 當用戶單擊離開,關閉瀏覽器或執行表單提交時,就會發生這種延遲。 我想看看問題是否由JavaScript引起。 我可以使用什么工具來查找? Firebug在這種情況下似乎不起作用。

代碼庫中提到的唯一卸載地方是在jquery.js和ui.tabs.js(jquery ui)中

是否有任何onunload事件處理程序(附加到主體,窗口,窗體等)? 如果是這樣,這將是一個很好的起點。

[編輯]:顯然,jQuery運行一個循環,解除綁定到每個元素的所有事件的綁定。 這是為了防止IE中的內存泄漏(由於事件處理程序關閉引用了它們正在偵聽的元素而創建)。 如果您的DOM非常復雜,則可能會造成延遲。

您可以嘗試在jQuery代碼中將此部分注釋掉,看看是否引起問題嗎?

[編輯2]:較新版本的jQuery(1.3+)中的窗口卸載似乎已得到改善。 您使用什么版本?

內聯代碼查找器是一個firefox插件(實際上,它實際上是一個firebug插件),可以直觀地向您顯示在何處以及何時調用它們所附加的事件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM