我的使用场景是一个按钮绑定了点击事件,点击事件会传输一个 文件下载的链接 的数组,点击后通过for循环下载多个文件
直接使用window.open只会第一个,后续都会被浏览器拦截,使用iframe解决,复制此方法绑定点击事件到button上即可
openLink(linkList) {
var count = 0;
for (var i = 0; i < linkList.length; i++) {
var hiddenIFrameID = 'hiddenDownloader' + count++;
var iframe = document.createElement('iframe');
iframe.id = hiddenIFrameID;
iframe.style.display = 'none';
document.body.appendChild(iframe);
iframe.src = linkList[i];
}
}