Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以使用什么工具来找出在离开网页时调用了哪些JavaScript事件?_Javascript_Performance_Browser_Debugging - Fatal编程技术网

我可以使用什么工具来找出在离开网页时调用了哪些JavaScript事件?

我可以使用什么工具来找出在离开网页时调用了哪些JavaScript事件?,javascript,performance,browser,debugging,Javascript,Performance,Browser,Debugging,我有一组包含大量JavaScript的页面:表排序、AJAX调用、自动完成、动态隐藏和显示页面区域,等等。。。我看到的问题是,当所述页面上的数据变大时,在离开页面时会注意到延迟(浏览器冻结)。此延迟发生在用户单击、关闭浏览器或执行表单提交时。我想看看这个问题是否是由JavaScript引起的。我可以用什么工具来找出答案?Firebug在这种情况下似乎不起作用 代码库中提到的唯一卸载位置是jquery.js和ui.tabs.js(jquery ui)是否有附加的onunload事件处理程序(到主体

我有一组包含大量JavaScript的页面:表排序、AJAX调用、自动完成、动态隐藏和显示页面区域,等等。。。我看到的问题是,当所述页面上的数据变大时,在离开页面时会注意到延迟(浏览器冻结)。此延迟发生在用户单击、关闭浏览器或执行表单提交时。我想看看这个问题是否是由JavaScript引起的。我可以用什么工具来找出答案?Firebug在这种情况下似乎不起作用


代码库中提到的唯一卸载位置是jquery.js和ui.tabs.js(jquery ui)

是否有附加的onunload事件处理程序(到主体、窗口、表单等)?如果是这样,这将是一个很好的调查起点

[Edit]:显然,jQuery运行一个循环,将附加到每个元素的所有事件解除绑定。这是为了防止IE中的内存泄漏(由于引用正在侦听的元素的事件处理程序闭包而创建)。如果DOM非常复杂,这可能会造成延迟

您可以尝试在jQuery代码中注释这一部分,看看这是否是导致问题的原因吗


[编辑2]:在较新版本的jQuery(1.3+)中,窗口卸载似乎得到了改进。您使用的是什么版本?

是一个firefox加载项(实际上它是一个firebug加载项),可以直观地向您显示调用事件的位置和时间。

这会有帮助吗?目前正在使用1.2.6,看起来是时候升级了。