网上搜到的答案基本上都是下面这种
function loadFilesWin(urlsArray) {
for (let i = 0; i < urlsArray.length; i++){
let aDom = document.createElement('a')//创建标签
let evt = document.createEvent('HTMLEvents')//创建事件
evt.initEvent('click', false, false)//初始化事件,绑定点击事件,不冒泡,不阻止浏览器默认行为
aDom.download = urlsArray[i]
aDom.target="_blank";
aDom.href = "http://"+encodeURI(urlsArray[i]);//对地址进行编码
aDom.dispatchEvent(evt)//触发事件
aDom.click()
}
}
使用时需要注意的问题:
1、下载的地址必须要加http:// /https:// ,
2、需要下载多个数据时(单个下载不需要) 必须要加aDom.target="_blank"; 就是把a标签的跳转属性 改成新开窗口 如果不加这个属性 下载会只下载第一个,
原因是:href 这个属性会刷新浏览器,所以当下载第一个文件时 浏览会刷新造成剩下的代码无法执行。所以for循环只会执行一次