Internet Explorer 崩溃问题

3

我目前在一些继承的客户端Javascript中遇到了一个中级问题。每隔一段时间,用户会遇到浏览器挂起,光标变成蛋计时器,然后浏览器无响应。

我很难确定问题出现在哪里。除了逐个禁用大块Javascript之外,是否有任何方法可以检测Internet Explorer中的挂起,并检查堆栈跟踪以确定最后调用的几个函数,以便定位问题?

非常感谢您的帮助。

4个回答

4
更新:您可以使用Web Development HelperIE Dev Toolbar来跟踪您的JavaScript调用。 Fiddler也是一个功能强大的Web调试代理工具。
如果您想消除IE问题的影响,请先禁用Internet Explorer中加载的所有不必要的插件。我曾经遇到过与Skype插件有关的大问题。
如果您想进行低级别的监控,您需要使用像Process Explorer和Process Monitor这样的工具。它们具有显示堆栈跟踪、您访问的文件和注册表的跟踪等功能。
对于JavaScript性能分析,您可以使用Firebug等工具。

0
该应用程序只支持IE浏览器,不兼容Firefox浏览器,因为公司基础设施不支持Firefox。此外,在一个不含ie插件或工具栏的精简虚拟机上也会出现这种情况。

0

你真的完全不知道哪个脚本可能会导致问题吗?IE8 beta 2有一些很好的调试/分析功能,我倾向于寻找可能的资源罪犯(例如Google地图、Ajax调用、DOM操作表附加等),并使用调试器设置断点和监视事物。此外,我还会使用Firebug分析器查看哪些方法被调用最多并花费最多时间,你可能会在这些结果中得到答案或至少提供一个起点。


我可以重复相同的步骤多次而没有错误,但似乎随机地会出现浏览器挂起的情况。我想问的是,在我无法轻松复制它时,跟踪错误并消除它的好策略。我希望有一种方法可以捕捉全局IE挂起的情况。 - Mat
如果您运行应用程序并附加Visual Studio(如果您有)并将其附加到IE进程,则应该能够在IE开始挂起时在Visual Studio中按下暂停,并且它应该打断JS堆栈。我用这个方法来调试我在为Google地图创建多边形时遇到的问题。 - redsquare
但是你需要Visual Studio(我使用的是2008版)- Visual Web Express(免费简化版本)也可能具有相同的功能,但从未尝试过。 - redsquare

0

我可以重复执行相同的步骤多次,而没有任何错误,但是似乎随机地会出现浏览器挂起的情况。我想问的是,在我无法轻松复制它时,跟踪并消除这个错误的好策略是什么。我希望有一种方法可以捕捉全局的IE挂起。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接