浏览器一次性弹出多个下载窗口

标签(空格分隔): js


准备工作

  1. 点击下载按钮,获取后台返回的下载链接,一般是"ftp://开头的
  2. 下载单个文件用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);
  }
  dnLoadOneVideo(url, triggerDelay, removeDelay) {
      //动态添加iframe,设置src,然后删除
      setTimeout(function () {
        var logDom = document.createElement("iframe");
        logDom.style.display = "none";
        logDom.src = url;
         document.body.appendChild(logDom)
          setTimeout(function () {
            logDom.remove();
          }, removeDelay);
      }, triggerDelay);
  },

调用eg:dnLoadOneVideo(videoPath, index * 100, 1000)

如果是多个下载文件,遍历出来下载链接,然后调用dnLoadOneVideo这个方法即可。如果是单个下载文件,直接调用window.open(下载地址)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 28,858评论 1 45
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,850评论 11 349
  • 第一章 1.Linux是一套免费使用和自由传播的类UNIX操作系统,它可以基于Intel x86系列处理器以及Cy...
    yansicing阅读 5,592评论 0 9
  • 闭环的双螺旋体系是未来虚拟经济和实体经济相互促进发展的大趋势。在万物互联互通的大环境下,在理论上两个纬度已没有边界...
    启航_FLY阅读 158评论 0 1
  • 日精进,今天一辆路虎客户,进行聊天他和我说我们店的刹车片,和4s店只差100块钱,遇到问题和领导沟通,进行调价格,...
    张林林_53db阅读 208评论 0 0

友情链接更多精彩内容