【问题标题】:Open window in tab of new window在新窗口的选项卡中打开窗口
【发布时间】:2015-06-04 15:19:07
【问题描述】:

我想在打开的窗口中打开一个标签。像这样的

(它应该打开一个带有“google.co.uk”的新窗口和一个新标签“google.de”

newWindow = window.open('http://www.google.co.uk', '', 'width=10');
newWindowTab = newWindow.open('http://www.google.de', '_blank');

但这只会在代码所在的窗口中打开“newWindowTab”。

我也试过这个,让窗口有时间加载,直到它(应该)打开新标签:

newWindow = window.open('http://www.google.co.uk', '', 'width=10');
setTimeout(function() {
    newWindowTab = newWindow.open('http://www.google.de', '_blank');
}, 500);

然后我得到:

错误:访问属性“open”的权限被拒绝

我用过火狐。我听说在 Chrome 中可能可以做到,但我想在 Firefox 中使用这个脚本。

【问题讨论】:

  • 几乎唯一的方法是让外部内容显示在受限空间in你的页面是使用iframe,所以你可以通过管理一组iframes 您通过标签栏显示/隐藏。 但是,Google 不太可能允许您在其周围添加iframe
  • 可能对你有帮助Link
  • @我已经看过了。但它只会在代码所在的“主窗口”中打开一个新选项卡。
  • @T.J.Crowder 这可能是一个很好的解决方案,但它应该打开一个外部网页,我需要访问其中的文档。这对于框架来说是不可能的,因为 XSS (en.wikipedia.org/wiki/Cross-site_scripting)
  • @TheEquah:根本不可能(除了 CORS 等)。

标签: javascript firefox


【解决方案1】:

这是不可能的,除非打开的窗口来自同一个来源(即同一个域)。 MDN says this:

引用可用于访问新的属性和方法 窗口只要它符合Same origin policy 安全性 要求。

【讨论】:

    最近更新 更多