在IE中评测长时间运行的javascript

在IE中评测长时间运行的javascript,javascript,internet-explorer,Javascript,Internet Explorer,我有一个带有javascript的页面,IE确定该页面没有响应。Firefox在同一页面上运行良好。我应该如何调试这个问题?我不确定Firebug的探查器在评估问题时是否准确?如果您使用的是IE,那么您可以使用内置探查器。点击F12打开开发者工具栏,在脚本选项卡上,有一个按钮,可以让你像在Firebug中一样配置文件。您还可以单击“开始调试”按钮逐步检查代码并查找错误发生的位置。如果您使用的是IE,则可以使用内置的探查器。点击F12打开开发者工具栏,在脚本选项卡上,有一个按钮,可以让你像在Fir

我有一个带有javascript的页面,IE确定该页面没有响应。Firefox在同一页面上运行良好。我应该如何调试这个问题?我不确定Firebug的探查器在评估问题时是否准确?

如果您使用的是IE,那么您可以使用内置探查器。点击F12打开开发者工具栏,在脚本选项卡上,有一个按钮,可以让你像在Firebug中一样配置文件。您还可以单击“开始调试”按钮逐步检查代码并查找错误发生的位置。

如果您使用的是IE,则可以使用内置的探查器。点击F12打开开发者工具栏,在脚本选项卡上,有一个按钮,可以让你像在Firebug中一样配置文件。您还可以单击“开始调试”按钮,逐步检查代码并查找错误发生的位置。

IE8还有一个可使用的调试器;只需按F12键并开始单步通过它。您还可以通过
console.log
添加日志记录语句,您可以看到IE的控制台输出。一旦找到长时间运行的JS,就可以通过
setTimeout
调用将其分解

这篇KB文章解释了长时间运行的脚本计时器的工作原理:

Internet Explorer现在跟踪已执行脚本语句的总数,并在每次启动新脚本执行时(例如从超时或从事件处理程序)重置该值,以用于使用脚本引擎的当前页面。当该值超过阈值时,Internet Explorer将显示“长时间运行脚本”对话框。Internet Explorer不会检查每条指令是否超出限制。脚本引擎会定期轮询Internet Explorer执行的语句数,Internet Explorer会检查是否超出限制


请注意,本文中描述的修复只针对本地计算机,不会为其他用户修复代码(也就是说,它告诉您如何更改注册表设置以延长计时器…这对您没有用处)

IE8还有一个可以使用的调试器;只需按F12键并开始单步通过它。您还可以通过
console.log
添加日志记录语句,您可以看到IE的控制台输出。一旦找到长时间运行的JS,就可以通过
setTimeout
调用将其分解

这篇KB文章解释了长时间运行的脚本计时器的工作原理:

Internet Explorer现在跟踪已执行脚本语句的总数,并在每次启动新脚本执行时(例如从超时或从事件处理程序)重置该值,以用于使用脚本引擎的当前页面。当该值超过阈值时,Internet Explorer将显示“长时间运行脚本”对话框。Internet Explorer不会检查每条指令是否超出限制。脚本引擎会定期轮询Internet Explorer执行的语句数,Internet Explorer会检查是否超出限制


请注意,本文中描述的修复只针对本地计算机,不会为其他用户修复代码(也就是说,它告诉您如何更改注册表设置以延长计时器…这对您没有用处)

尝试使用此免费工具在IE中评测JavaScript:

由John Resig审查:


它有一系列压倒性的特点。我希望Firebug如此详细。

尝试使用此免费工具在IE中评测JavaScript:

由John Resig审查:


它有一系列压倒性的特点。我希望Firebug能如此详细。

有机会解释一下这个javascript在做什么吗?理想情况下,提供一些示例片段?这是问题的一部分。页面上有很多javascript,IE不会报告哪一个导致了问题。是的,在这种情况下很难提供帮助。也许您应该尝试通过排除部分代码来缩小问题的范围,这是开发人员遇到问题时首先要做的事情:缩小范围。有机会解释一下这个javascript在做什么吗?理想情况下,提供一些示例片段?这是问题的一部分。页面上有很多javascript,IE不会报告哪一个导致了问题。是的,在这种情况下很难提供帮助。也许您应该尝试通过排除部分代码来缩小问题的范围,这是开发人员遇到问题时首先要做的事情:缩小范围。