无法引用现有窗口
Posted
技术标签:
【中文标题】无法引用现有窗口【英文标题】:Can't get reference to existing window 【发布时间】:2017-10-04 06:31:53 【问题描述】:我需要在 Firefox 中获取当前页面未打开但具有相同协议、端口和主机的窗口的引用对象。所以符合同源政策。
我使用下面的代码来做到这一点:
var mainWindow = window.open('', ''MAIN_WINDOW');
这在 Firefox 52 之前有效,但是由于 52 更新,此代码仅打开一个新的空白选项卡,而不是引用当前打开的窗口。我查看了 52 版本中的修复程序,但看不到任何会直接影响此问题的内容。
在我想要引用的窗口中执行 console.log(window.name) 会返回“MAIN_WINDOW”。所以窗口名称是正确的。
然后,我稍后在代码中尝试访问窗口引用中的框架数组。有没有办法解决这个问题或我可以尝试的替代方法?
【问题讨论】:
您是在尝试打开新窗口而不是选项卡,还是您可以使用该选项卡,但如果该选项卡已打开,则需要获取参考? @Olga 第二个。所以标签已经打开了,我正在尝试获取它的参考 请提供示例代码,然后在新窗口中创建框架然后访问它们。 【参考方案1】:如果窗口是同源的,您可以使用 BroadcastChannel 让单独的窗口或选项卡相互通信
【讨论】:
以上是关于无法引用现有窗口的主要内容,如果未能解决你的问题,请参考以下文章
Docker 错误无法删除 docker 容器,冲突:无法删除存储库引用