0

在我的网站上,我有一个 iframe,里面有一个自动执行的 javascript Chatt 函数。这个脚本有一些 setIntervals、回调和使用 PushStream 与我的 NodeJs 服务器通信。

它在所有浏览器中都可以正常工作,但在 IE10 中,浏览器加载指示器永远不会停止旋转,脚本仍然可以正常工作,但是我如何让指示器停止?

IE10 和其他的有什么不同?

该脚本有几百行,但这是文件。 http://westerlundh.se/cc.js

谢谢

4

1 回答 1

0

如果您有任何代码在页面准备好执行 JS 时运行很长时间,这可能会导致浏览器继续显示加载指示器。Safari 确实/曾经也遇到过这个问题。一个快速但有点难看的解决方案是将您的初始代码包含在setTimeout. 例如

setTimeout(function(){
    //The code to run when the page loads
},10);

这将迫使 IE 相信所有需要运行以加载页面的代码都已运行。AJAX 轮询可能是造成这种情况的一个常见原因(您似乎就是这种情况)。在页面加载时开始第一次长轮询会导致在 AJAX 请求打开期间显示加载图标,然后再次开始另一个轮询只是延长了显示加载图标的时间长度,因此看起来页面是未完成加载。

于 2013-07-16T11:54:14.767 回答