• 火狐浏览器如何js关闭窗口的几种解决方法


    今天在项目上有一个页面要求在几秒后自动关闭,想着还比较简单,用window.close()就可以了,但是用IE/谷歌/火狐浏览器试了一下,发现IE可以,谷歌用网上的兼容方法也可以实现,但是火狐这里卡住了,不能关闭,网上看到的一种兼容代码:

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

    试了一下,发现火狐还是不行,又百度了几篇帖子,下面是我的总结:

    一、这种方法简单粗暴:改firefox的配置文件

      步骤:
         1、在地址栏输入about:config然后回车,警告确认
         2、在过滤器中输入”dom.allow_scripts_to_close_windows“,双击即可将此值设为true
             即可完成了。

        注:这种方法虽然可以很快解决问题,但是实际项目中,我们不可能去要求每个客户去更改自己浏览器的配置文件

    二、利用js中的window.open()

      因为发现火狐浏览器必须是js打开的页面,才能用window.close()关闭,这样的话,就用window.open("这个页面地址")跳转到这个页面,试验可行

    三、利用a标签

      利用a标签链接跳转到这个页面,不过需要用target="_blank"属性重新打开页面才可以,试验可行

    这是三种解决方法,不过还没有找到火狐浏览器在本页面试验关闭页面的方法,还有待研究,希望有大神知道的可以告知

  • 相关阅读:
    VS2013安装与部署工具中添加 vcredist_x64.exe
    ZeroMQ高水位标记(high-water mark,HWM)
    Ubuntu16.04 动态链接库(.so)查询路径设置
    ubuntu16.04开机启动字符界面
    python 全局搜索路径
    learning to rank
    数据集
    hadoop streaming 文档
    机器学习:一些感想
    矩阵分解 推荐
  • 原文地址:https://www.cnblogs.com/wanglei7175/p/5917404.html
Copyright © 2020-2023  润新知