如何在js中的新标签/窗口中打开多个链接。
document.querySelectorAll('a').forEach(function(item){
item.click();
window.open(a.getAttribute('href'), '_blank'); //also does not work
});
我能想到为什么上述不起作用的唯一原因是铬的安全性?
答案 0 :(得分:1)
如果您不关心弹出窗口阻止程序妨碍您使用,只需使用window.open()
并在新标签中打开它们即可。您不能同时使JS 点击多个链接,因为它会停止当前标签并关注新标签(至少使用标准设置)
document.querySelectorAll("a").forEach(function(item) {
window.open(item.href);
});

在Chrome中,您可以使用以下脚本阻止弹出窗口阻止程序:
document.querySelectorAll("a").forEach(function(item) {
// will create tabs for every link
chrome.tabs.create({
url: item.href
});
});

答案 1 :(得分:1)
您需要切换到for
循环。 forEach返回对节点列表的引用,而不是对象本身。请尝试以下方法:
function myFunction() {
var myNodelist = document.querySelectorAll("a");
var i;
for (i = 0; i < myNodelist.length; i++) {
myNodelist[i].click();
}
}
答案 2 :(得分:0)