前端通用下载文件方法(兼容IE)
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                前端通用下载文件方法(兼容IE)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                之前在網(wǎng)上看到一個博主寫的前端通用的下載文件的方法,個人覺得很實用,所以mark一下,方便以后查閱
源文地址(源文還有上傳/下載excel文件方法)
因為項目要求要兼容IE瀏覽器,所以完善了一下之前博主的方法
IE 瀏覽器:使用微軟自帶的msSaveBlob 方法,a標簽的download屬性不支持IE
谷歌瀏覽器(只測試過谷歌):創(chuàng)建a標簽 ,添加download屬性,模擬鼠標點擊事件
//這里res.data是返回的blob對象
        var blob = new Blob([res.data.fileData], {type: 'application/json;charset=utf-8'}); //application/vnd.openxmlformats-officedocument.wordprocessingml.document這里表示doc類型
        var href = window.URL.createObjectURL(blob); //創(chuàng)建下載的鏈接
        if (window.navigator.msSaveBlob) {
          try {
            window.navigator.msSaveBlob(blob, 'model.json')
          } catch (e) {
            console.log(e);
          }
        } else {
          // 谷歌瀏覽器 創(chuàng)建a標簽 添加download屬性下載
          var downloadElement = document.createElement('a');
          downloadElement.href = href;
          downloadElement.target = '_blank';
          downloadElement.download = 'model.json'; //下載后文件名
          document.body.appendChild(downloadElement);
          downloadElement.click(); //點擊下載
          document.body.removeChild(downloadElement); //下載完成移除元素
          window.URL.revokeObjectURL(href); //釋放掉blob對象
        }
                            總結
以上是生活随笔為你收集整理的前端通用下载文件方法(兼容IE)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 程序员高效率工作工具推荐(必备工具)
- 下一篇: clickhouse hadoop_大数
