3

我这里有一种情况,当我在完成加载之前关闭 IE9 浏览器窗口时,浏览器会关闭并重新打开。这会导致我的 Web 应用程序崩溃。经过对网站的一些研究,我知道这种行为是由于 IE9 中引入的“Hang Resistance”功能。作为一种解决方法,如果我在用户单击窗口关闭按钮时向用户显示信息消息等,则可以避免崩溃。在我的 html 文件中,我使用下面的代码来执行此操作。

<script type="text/javascript">
var doneLoading = false;
window.onbeforeunload = confirmExit;
function confirmExit()
{
    if(navigator.appVersion.indexOf("MSIE 9") != -1 && !doneLoading)
    return "Closing this window before the page is fully loaded might cause the browser to crash. ";
}
</script>

'doneLoading' 是一个变量,用于指示窗口是否完成了内容的加载。

在我的应用程序中,我在包含标签的母版页中使用此逻辑。在框架集的“onload”事件中,“doneloading”变量设置为 true。现在我的问题是,上面的 Java 脚本代码并没有总是被执行,我也没有得到浏览器崩溃的 IE 警告消息。请提供一些关于为什么不总是显示此消息的输入。

4

0 回答 0