Advertisement

JS脚本下载TXT文本文件的兼容方法

阅读量:

出现的问题: txt文本文件在浏览器中用a标签下载,会直接打开,而不会下载。

解决思路:

1、首先验证返回的地址中是否包含 .txt 字符串

2、识别当前使用的浏览器类型,确定采用何种方式发送 get 请求

3、获取到目标地址后,生成一个 a 标签,并将该标签的下载属性设置为对应地址

4、从请求地址中提取出响应文本 responseText ,利用 new Blob() 方法将其转换为 blob 文件流格式

5、将生成的 blob 文件流赋值给 a 标签,随后模拟点击操作以触发下载行为,完成下载后即刻移除该 a 标签

注意:由于 a 标签所指向的是 blob 文件流的虚拟地址,因此浏览器不会直接展示文件内容,而是会自动启动下载流程

复制代码
 //txt等格式

    
 if(url.indexOf('.txt') != -1){ //判断地址栏是否有.txt,有就是txt文件
    
     var xmlHttp = null;
    
     if (window.ActiveXObject) {
    
     // IE6, IE5 浏览器执行代码
    
     xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");

全部评论 (0)

还没有任何评论哟~