当窗口打开时,IE9在加载前启动事件

IE9 firing onbeforeunload event when the window opens

本文关键字:加载 启动 事件 IE9 窗口      更新时间:2023-11-24

我正在使用JFileUpload小程序构建一个网站,并希望以某种方式处理页面的关闭。取消小程序时调用JSTransferCancelled。下面的代码是我用来处理这些事件的,它适用于除IE之外的所有浏览器

        function JSTransferCancelled(){
            bCancel=false;
            $.post("cancel.php");
            self.close();
        }
    $(window).load(function(){
        $(window).bind('beforeunload',function(){
            document.uploader.setEnabled(false);
            if(bCancel){ document.uploader.cancel();} 
        }); 
    });

我在主站点的一个新选项卡中打开带有上传器的页面,并希望在他们取消上传时关闭它。然而,当我在IE中打开选项卡时,我立即收到警报,说The webpage you are viewing is trying to close this tab. Do you want to close this tab? [OK] [Cancel]和我的上传器都因为setEnabled(false)调用而无法访问,并且因为cancel()调用而被取消。

我正在寻找的是相同的功能,只是在IE中。我知道IE中有很多很多问题,比如onbeforenload之类的事件会触发它来响应不同的事情,但我已经在我的网站中检查了所有这些问题,但没有发现任何问题。我在网上没有遇到任何能解决我遇到的那种问题的东西。

我尝试过将onbeforeunload函数封装在不同的东西中,比如上面的load函数以及$(document).ready(),但它们要么给我带来了相同的问题,要么带来了新的问题。

检查Microsoft的荒唐文档然后确保您使用的代码都没有执行它们列出的触发beforeunload的任何操作,其中包括一些实际上没有卸载页面的东西(转到Microsoft!)