【问题标题】:Can window.open open multiple tabs at once?window.open 可以一次打开多个标签吗?
【发布时间】:2013-07-26 17:22:40
【问题描述】:

我可以打开一个带有多个标签的新窗口吗?

类似这样的:

window.open("cnn.com;foxnews.com;nyt.com");

【问题讨论】:

  • 可能不会。但是三次调用 open 有什么问题?
  • @dystroy:认为他想用两个标签打开一个窗口。调用open 两次会给你两个窗口和一个标签(显然)。
  • @Matt 你可能是对的。
  • 我需要在 new 窗口中打开所有 3 个选项卡。

标签: javascript


【解决方案1】:

标准 DOM 中没有选项卡的概念。

事实上,当您要求浏览器打开一个窗口时,它可能是一个选项卡,具体取决于浏览器和用户设置。

所以,除了编写用户必须安装的扩展之外,不,你不能这样做。

【讨论】:

    【解决方案2】:

    可以一次打开多个标签,下面的代码很有用

     function openMultipleTabs() {
            var w1 = window.open('http://localhost/sample/first.aspx', '1');
            var w2 = window.open('http://localhost/sample/second.aspx', '2');
            var w3 = window.open('http://localhost/sample/third.aspx', '3');
           }
    

    【讨论】:

    • 这确实在允许弹出窗口后在最新的 chrome 中工作
    【解决方案3】:

    没有。编码员绝对无法打开多个标签页。没有 for 循环可以完成这项工作。

    我最接近解决方案的是--

    使用setInterval 将每个间隔重定向到某个页面。但这又不能在单个实例中发生。

    所以,你能做的最好的事情就是在新标签页中打开window.open("someurl.com"),在同一个标​​签页中打开window.location.href="some_other_url.com";

    DEMO

    但是,没有什么可以在单个实例中打开多个选项卡。

    【讨论】:

      【解决方案4】:

      是的,如果您在调用var window = window.open(url, windowName, [windowFeatures]); 时指定不同的windowName,则可以使用window.open 打开多个选项卡

      docs 状态 windowName 是:

      一个 DOMString 指定要加载指定资源的浏览上下文(窗口、iframe 或选项卡)的名称;如果 名称不表示现有上下文,创建一个新窗口并 由 windowName 指定的名称。

      这个名字可以作为or的target属性的目标

      元素。名称不应包含空格。记住 这不会用作窗口的标题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-07-02
        • 2017-09-29
        • 2020-04-17
        • 2020-09-02
        • 1970-01-01
        • 1970-01-01
        • 2012-02-01
        相关资源
        最近更新 更多