火狐浏览器关闭窗口

  最近在做一个项目时候,碰到一个浏览器兼容性问题。当我在一个页面提交结束后,想在几秒内自动关闭该窗体。在IE下没有问题,可是在火狐下不能自动关闭窗体。在网上找了很多自称兼容个IE、火狐的解决办法。都不能解决此问题!(有提到修改火狐浏览器配置:在about:config中,这种方式不好,准不能提示用户自己去修改这个配置吧!)

  就在我准备放弃的时候,找到一个帖子。说道如果是window.open()打开的窗体,则window.close();方式也是可以关闭的。因为我之前这个窗体是<a href="XX.aspx" />这种方式打开的,因此我换成window.open()打开。如下:

<a href="#" onclick="openwin()" style=" display:block; width:180px; height:40px"></a>

脚本:

 function openwin() {
            var w = screen.availWidth - 10;
            var h = screen.availHeight - 30;
            window.open(XX.aspx', "win", "fullscreen=0,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=yes,resizable=1,width=" + w + ",height=" + h + ",top=0,left=0", true);
        } 

这样打开的新窗体,在xx.aspx中,

 function closeme() {
        var browserName = navigator.appName;
        if (browserName == "Netscape") {
            window.open('', '_parent', '');
            window.close();
        }
        else if (browserName == "Microsoft Internet Explorer") {
            window.opener = "whocares";
            window.close();
        }
    }

调用就ok了

posted on 2013-05-06 15:02  我从草原来  阅读(257)  评论(0编辑  收藏  举报

导航