火狐浏览器如何用js关闭网页窗口

找了好久都没有找到方法,网上只是说改配置文件,但是实际中不能要求客户去改配置文件啊,不知道有没有大神知道??急急急

阅读 9k
3 个回答
window.opener = null;
window.open('', '_self');
window.close();

我就是用上述代码在火狐中关闭窗口的。

问题原因:

因为安全理由,浏览器不支持直接使用脚本关闭窗口。
火狐会直接提示:
脚本不得关闭非脚本打开的窗口。

Chrome在console里倒是能直接用window.close();关闭,然而写在js文件中再运行就会报错:
Scripts may close only the windows that were opened by it.

IE11放宽了一点限制,会在运行的时候弹提示窗:
图片描述

解决办法:

这是火狐浏览器自身做的限制,所以只能由用户解除这个才行:
打开火狐浏览器,地址栏输入about:config,找到dom.allow_scripts_to_close_windows这项(支持Ctrl+F搜索),默认值为false,双击修改成true,就可以使用脚本关闭窗口了。
实测 Firefox 47.0.1可用。

其他浏览器应该会有类似的设置。

图片描述

window.close()

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题