相关疑难解决方法(0)

在Internet Explorer中禁用长时间运行脚本消息

我有一个JavaScript函数,其中包含一个迭代很多次的for循环.
调用此函数后,IE浏览器显示以下消息:

停止运行此脚本?
此页面上的脚本导致Web浏览器运行缓慢.如果它继续运行,您的计算机可能会无响应.

我怎样才能解决这个问题?
无论如何我可以从IE禁用此消息?

javascript internet-explorer

49
推荐指数
2
解决办法
11万
查看次数

我该怎么做才能优化我的IE7/IE8的ajax应用程序,以避免"停止运行此脚本"?

我有一个预订引擎,在IE7中相当缓慢.它基于ajaxified和hash/window onchange.共有5个步骤.我遇到的主要问题是第2步在IE中非常慢.

当用户登陆步骤2时,发出ajax请求以使用web服务提取数据以显示酒店房间.酒店客房按主要房型和内部更具体类型划分.应用于酒店房间的JS功能包括:

  • 手风琴在房间里
  • 手风琴的房间类型(嵌套手风琴)
  • 快速翻转图像
  • jscrollpane,图像翻转后左侧房间描述上的自定义滚动条
  • jscrollpane,右侧房间类型的自定义滚动条

所有这一切导致着名:

在此输入图像描述

我已经用Google搜索并登陆了这个,这个,这个.

显然原因是在IE中的特定时间内有太多的脚本语句按顺序执行.

我基本上需要重构我的代码并对其进行优化,以便在函数调用之间存在延迟.

我在执行ajax请求后注入HTML的方式是:

 734                     $( o.html ).appendTo( el )
Run Code Online (Sandbox Code Playgroud)

o.html是对html此处派生的JSON对象属性的引用.

然后,下面的代码运行:

setTimeout(function () {


    $('#roomz .room-accordion').each(function () {

        $(this).accordion({
            header: 'h2.new-heading',
            autoheight: false,
            clearStyle: true,
            collapsible: true,
            change: function (event, ui) {
                window.ui = ui;

                // if it hasnt been quickflipped/subnest accordioned, do it
                if (!$(ui.newContent).data('enabled')) {
                    $('.room-rates', ui.newContent).each(function () {

                        $(this).accordion({
                            header: 'h4.rate-name',
                            autoheight: false,
                            active: 0,
                            clearStyle: …
Run Code Online (Sandbox Code Playgroud)

javascript optimization refactoring internet-explorer dom

12
推荐指数
1
解决办法
1178
查看次数

"停止运行这个脚本?" 错误

我正在开发一个广泛使用JavaScript(jQuery)的网站.我经常让IE'停止运行这个脚本?' 我尝试关闭浏览器时出现错误对话框.

我猜这个问题发生的原因是该网站是一个使用AJAX的网页,所以没有回发来重置IE执行的命令数.

客户端注册表黑客攻击不是一种选择.

有没有人知道解决这个错误的方法?

更新:页面有一个(~10)个间隔计时器,它们以30或60秒的间隔连续轮询.

javascript ajax jquery internet-explorer

8
推荐指数
1
解决办法
4万
查看次数

java gwt脚本导致浏览器运行缓慢

我有一个用java gwt编写的Web应用程序.在IE8中打开网站时,总会弹出"此页面上的脚本导致您的网络浏览器运行缓慢"的消息.该消息仅出现在IE8中没有更高版本,而不是在FF或Chrome中!

由于应用程序是用java gwt编写的,因此很难调试javascript代码,还有另一种可能性来确定问题吗?

应用程序还有许多异步调用数据库可能是问题吗?

java gwt

3
推荐指数
1
解决办法
2070
查看次数

尝试导航到另一个页面时,IE7和IE8中的"停止运行此脚本"错误

我创建了一个Drupal网站,它使用Openlayers来显示地图.在其中一个地图中,有一些"过滤器",用户可以使用它们来动态更改地图中显示的数据.与各国相关的数据显示为各国的泡沫.使用Openlayers的API绘制气泡.选择过滤器时,会在场景后面进行大量计算.我使用了setTimeout来避免长时间运行的循环.过滤器工作正常.但是,在单击多个过滤器后(例如,如果单击12个过滤器),如果用户通过单击链接尝试移动到另一个页面,则在IE7和IE8中,以下错误显示 -

"停止运行这个脚本?

此页面上的脚本导致Web浏览器运行缓慢.如果它继续运行,您的计算机可能会无响应."

此错误不会在任何其他浏览器中显示,并且在单击链接之前不会显示在IE7中.这方面的任何指针都将受到高度赞赏.

更新:问题出在OpenLayers的事件缓存中.OpenLayers在窗口卸载事件中清除了事件缓存,这在IE7和IE8中陷入困境(我不知道为什么).到目前为止,当用户点击另一个链接时,我已经能够通过点击普通链接调用OpenLayers.Event.unloadCache()来解决问题.

javascript jquery internet-explorer openlayers

2
推荐指数
1
解决办法
6192
查看次数