开发者

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

开发者 https://www.devze.com 2023-04-07 15:05 出处:网络
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

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 us开发者_开发百科e 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.


You can use target="_blank" attribute of a link for opening the corresponding page in new tab.


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 :-)

0

精彩评论

暂无评论...
验证码 换一张
取 消