我想使用 JavaScript 在新标签页中一次打开给定网页上的所有链接。让我们以 Stack Overflow 问题列表为例。这是我想出的:
$(".question-hyperlink").each(function(){
$(this).attr({
target: "_blank",
title: "Opens in a new window"
});
$(this).click();
})
不幸的是,这根本不起作用。我尝试使用 window.open
代替,但仍然没有成功。我该怎么做?
最佳答案
您的代码无法正常工作的原因是 .click()
不模拟用户的点击,它只是触发绑定(bind)到点击事件的所有事件处理程序。因此它只运行您放置的 JS 代码,而不运行浏览器对点击的 react 。
您可以使用 window.open()
像这样:
$(".question-hyperlink").each(function(){
window.open($(this).attr("href"), '_blank');
});
不过请注意弹出窗口拦截器!如果你想处理它们,你可以这样做:
var x = window.open(...);
if(x) {
//The window was opened.
}
else {
//It was blocked.
}
关于javascript - 在新标签页中打开给定页面上的所有超链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33518565/