解决IE关闭页面时连续弹出新窗口的bug

发表于:2009-02-23来源:作者:点击数: 标签:bugBUGBug窗口页面
这个问题长期以来一直一个随机出现,又十分难以重现和定位。几经努力之后定位到了,在一个带有复杂的内嵌iframe的页面,当内嵌的iframe正在渲染的过程中关闭IE 浏览器的时候,会比较容易发生这个问题。 比较容易猜想的是IE在关闭iframe的时候出现了某些问题。
这个问题长期以来一直一个随机出现,又十分难以重现和定位。几经努力之后定位到了,在一个带有复杂的内嵌iframe的页面,当内嵌的iframe正在渲染的过程中关闭IE 浏览器的时候,会比较容易发生这个问题。

        比较容易猜想的是IE在关闭iframe的时候出现了某些问题。猜测是几个iframe相互有通过top的脚本调用有关系,或者几个iframe和top都在各自不同的域名下有关系,但是页面太复杂进一步定位具体是什么问题十分困难(当试图简化页面的时候,问题往往就不能重现了)。而且问题出现在浏览器内部,就算具体定位到了不一定就能够解决。所以更容易和更有意义的,可能是回避“连续弹出新窗口”这个问题。

        最开始的想法是,IE既然在出问题的时候是正在渲染iframe,那么此时可能cpu特别繁忙导致了问题,如果可以回避cpu的最高峰期,把渲染iframe的动作做一定的延迟,也许就可以解决问题。试验后发现,只是减缓了页面的展现速度,对问题的解决基本没用帮助。

原文转自:http://www.ltesting.net