首页 > 解决方案 > 使用 window.open 打开多个 URL

问题描述

我对javascript很陌生,所以对初学者的问题表示歉意。基本上,我在使用 window.open() 方法时遇到了一些问题。

我的代码本质上是一个用户字符串,向它添加了几个不同的变体,然后搜索这些不同的变体,然后应该为每个结果打开一个新窗口。但是,似乎在我的第一个 window.open 语句之后,代码停止执行。这就是我正在使用的:

var searchStrings = new Array(url1, url2, url3);

var arrayLength = searchStrings.length;
for (var i = 0; i<arrayLength; i++) {
    window.open(searchStrings[i]);
}

我已经使用 window.open 以外的代码测试了循环,以确保它正确地遍历数组,并且我将 i 设置为高于 0 的值以测试打开数组中的第二个或第三个项目。

似乎 window.open 只能使用一次,还是我做错了什么?

标签: javascriptarrayswindow.open

解决方案


看看这个:https ://javascript.info/popup-windows

这记录了 window.open() 功能的正确用法。

现代浏览器会阻止这种执行,因为存在误用该功能的风险。想象一下,您进入页面并无缘无故打开了 10 倍窗口。

实际上,看看您的代码是否有效,但 chrome 会阻止窗口并在地址栏上通知您。但是 Firefox 会完全阻止它,直到手动禁用该选项。


推荐阅读