jquery 使用javascript打开多个选项卡

mxg2im7a  于 2022-12-12  发布在  jQuery
关注(0)|答案(3)|浏览(161)

我有一个javascript例程,它获取一个ID列表,我想为每个ID打开一个浏览器选项卡。下面是我现在所拥有的--它打开了第一个选项卡,但没有打开其他任何选项卡。有人能给我指出正确的方向吗?

function launch() {
        var data = {5, 8, 9};
        if (data.length > 0) {

            let url = "/Controller/Action";
            data.forEach(function (entry) {
                
                let link = document.createElement('a');
                link.href = url + "?VisitID=" + entry;
                link.target = '_blank';
                link.click();
                //setTimeout(() => { console.log("wait"); }, 1000);
            });
        }
        else {
            alert("You must select at least one row before launching");
        }
    }
jgwigjjp

jgwigjjp1#

首先,如果您实际上不需要显示链接,只需要使用它来打开一个新的标签页,那么您可以使用window.open来代替。
第二,根据这条评论,你想做的事情是可以做到的。考虑下面的伪代码:

[1,2,3].forEach(i => {
  window.open("http://example.com/" + i, i)
})

“诀窍”是每次提供一个不同的URL和一个新的名称(window.open的第二个参数),否则Chrome(可能还有其他浏览器)只会打开一个标签页。
但是,请谨慎使用这种方法,如果你经常打开太多的标签页,会让用户抓狂的。

zvokhttg

zvokhttg2#

我找到了这个简单的javascript解决方案:

<html>
<head>
<script type="text/javascript">
function open_win() {
    window.open("http://accountingtaxinsurance.com/")
    window.open("http://jaelfaulconinsurance.com/")
}
</script>
</head>

<body>
<form>
<input type=button value="Open Windows" onclick="open_win()">
</form>
</body>

</html>
gj3fmq9x

gj3fmq9x3#

进入Chrome设置〉“隐私和安全”〉“网站设置”〉“弹出窗口和重定向”
允许所有站点,或将特定站点添加到“允许发送弹出窗口和使用重定向”站点列表中
或者,在您尝试打开多个选项卡的选项卡上,您会看到一条消息“弹出窗口被阻止”,当您单击它时,会给予您一个对话框,您可以选择单选按钮“始终允许弹出窗口和重定向自...”

相关问题