赞
踩
通常实现下载需求时候 会使用a标签 设置a标签的href为需要下载的资源路径 调用click点击事件就会实现下载
但是如果需要下载的资源类型是浏览器可以解析的 比如txt等 浏览器不会触发下载而是会直接打开资源预览
此时可以为a标签添加download属性 通过download设置下载的文件名和后缀 此时任何类型资源就都可实现下载
但是如果资源不是同源 浏览器同样会直接打开预览
a标签实现下载:
设置a标签的download属性 并调用click方法
window.open()实现下载
widnow.open('下载的地址') 利用打开新tab方式实现下载
如果资源是浏览器无法解析的类型 会关闭tab 触发下载
但是如果资源是浏览器可以解析的类型 还是会直接打开预览
构造表单方式
构造表单方式即是通过动态创建表单元素
设置action为资源下载路径
设置表单隐藏并调用表单的submit方式
同样针对浏览器无法解析的类型会下载 浏览器可解析的资源类型会直接打开预览
http://danml.com/download.html
download.js是将以上下载方式结合 针对不同情况内部做了处理
基本使用:
1、将数据资源写入文件中并下载
var blob = new Blob(['哈哈哈哈']);
download(blob,'test1.txt','text/plain')
2、生成txt文件并下载
conat str ='hello';
download(str,'test2.txt','text/plain')
.......
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。