zoukankan      html  css  js  c++  java
  • js 文件下载,多个文件下载,pdf下载

    网上搜到的答案基本上都是下面这种

    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循环只会执行一次

      

  • 相关阅读:
    数组
    mysql优化思路
    mysql_存储过程
    mysql_函数
    mysql_结构
    mysql_触发器
    mysql_变量
    mysql_事务
    mysql总结
    mysql备份
  • 原文地址:https://www.cnblogs.com/xieyao/p/12675478.html
Copyright © 2011-2022 走看看