简体   繁体   中英

open multiple tabs on a single window by a single click using JavaScript

I need to open multiple tabs on a single window, new window instance for a single link will not be a problem but when it comes to 20+ (which is my case) then 20+ new windows are really a problem, so I need to find a solution, the code has to run on chrome only in my case I have 35 links stored in an array. I am reading array using a for loop and opening links in new tabs using window.open()
I can use only JavaScript for this. I am developing a customized chrome extension.

I found out that while using window.open() to open multiple links in different tabs of a same window in Google Chrome, it succeeds in opening only first 24 windows and left out the rest.
I need to find out a way to open all the links at once with a single click.

There are some Google Chrome Extensions available which work like this like LinkClump
This Extension successfully open all selected links in different tabs of a same window. I am trying to modify its working to suit mine.

Meanwhile, if anyone can get any solution, he/she is most welcome.

I wasn't sure if you wanted the links to be open in a new window or not so I've included both possibilities;

Same Window

var linkArray = []; // your links
for (var i = 0; i < linkArray.length; i++) {
    // will open each link in the current window
    chrome.tabs.create({
        url: linkArray[i]
    });
}

chrome.tabs documentation

New Window

// will open a new window loaded with all your links
chrome.windows.create({
    url: linkArray
});

chrome.windows documentation

Regardless of which approach you use you will need to declare the tabs permission in your extension's manifest.

您可以使用链接的target="_blank"属性在新选项卡中打开相应的页面。

Solotion: Use setTimeout! With more and more time values

javascript:
var a=document.location.href;
for (var i=0;i<50;i++){
    setTimeout('window.open(a)',i*200);
}
void(0);

This will clone the current tabs 50 times, even in Chrome! Unfortunately, in new Windows instead of new tabs. Silly Chrome :-)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM