window.close() 不起作用 - 脚本可能只关闭它打开的窗口

新手上路,请多包涵

当我尝试通过 Javascript 的 window.close() 方法关闭窗口时,我总是遇到问题,而浏览器在控制台上显示以下消息:

 "Scripts may close only the windows that were opened by it."

这发生在页面的每个部分。我可以直接通过链接、按钮或脚本运行它,但始终会显示此消息。

我试图为下面的函数(或这些函数的变体)替换 window.close(); 方法,但没有再次发生:

 window.open('', '_self', '');
window.close();

原文由 mayconfsbrito 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2.2k
2 个回答

我通过 Google 和 Stack Overflow 搜索了很多网页,但没有任何建议可以解决我的问题。

经过多次尝试,我改变了测试该控制器的方式。然后我发现当我通过 Chrome 中的 Ctrl + Shift + T 快捷方式重新打开页面时,问题总是发生。所以页面运行了,但没有父窗口引用,因为这无法关闭。

原文由 mayconfsbrito 发布,翻译遵循 CC BY-SA 4.0 许可协议

错误消息没有比这更清楚的了:

 "Scripts may close only the windows that were opened by it."

如果您的脚本没有启动打开窗口(使用 window.open 之类的东西),则不允许该窗口中的脚本关闭它。它是一种防止网站控制您的浏览器和关闭窗口的安全措施。

原文由 somethinghere 发布,翻译遵循 CC BY-SA 3.0 许可协议

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