浏览器一次性弹出多个下载窗口
2018-12-21 本文已影响1人
lvyweb
标签(空格分隔): js
准备工作
- 点击下载按钮,获取后台返回的下载链接,一般是
"ftp://
开头的 - 下载单个文件用window.open(下载地址)是可以实现的,但是多个的时候无法直接打开多个浏览器,应该是浏览器保护策略引起
下载一个视频的函数
/**
*
* @param {*} url 下载链接
* @param {*} triggerDelay 延迟时间
* @param {*} removeDelay 清除iframe的时间
*/
function dnLoadOneVideo(url, triggerDelay, removeDelay) {
//动态添加iframe,设置src,然后删除
setTimeout(function () {
var frame = $('<iframe style="display: none;" class="multi-download"></iframe>');
frame.attr('src', url);
$(document.body).after(frame);
setTimeout(function () {
frame.remove();
}, removeDelay);
}, triggerDelay);
}
调用eg:dnLoadOneVideo(videoPath, index * 100, 1000)
如果是多个下载文件,遍历出来下载链接,然后调用dnLoadOneVideo
这个方法即可。如果是单个下载文件,直接调用window.open(下载地址)