首页 > 解决方案 > 在 Chrome 上使用 Javascript 打开和关闭多个选项卡

问题描述

我的网站上有一个锚标签,点击后应该使用 javascript 打开 4 个新标签

锚标签: <a onclick="openTabs()"> Open 4 tabsLink </a>

JS功能:

let windows = [];
function openTabs(){
  var locs = [
    'https://www.google.com',
    'https://www.google.com',
    'https://www.google.com',
    'https://www.google.com',
  ]
  for (let i = 0; i < locs.length; i++) {
    windows.push(window.open(locs[i], '_blank'))
  };
}

用户应该能够通过单击一个按钮来关闭所有 4 个选项卡。关闭所有打开的标签的功能:

function closeTabs(){
      if (windows.length > 0){
        for(var i = 0; i < windows.length; i++){
          windows[i].close();
        }
      }
}

上面的代码在 Firefox 上运行良好(在我允许弹出窗口之后),但在 chrome 上,即使是“openTabs”功能也不起作用。它只打开第一个链接。closeTabs 函数抛出以下错误:

(index):1815 Uncaught TypeError: Cannot read properties of null (reading 'close')

我应该利用单独的方法/API 在 chrome 上启用此选项吗?或者有没有更有效的方法来做到这一点?

标签: javascriptgoogle-chrome

解决方案


推荐阅读