jq及html通过url下载文件

一、通过html的a标签下载

<a href="url 302到下载地址" download>下载</a>

例如:

var   link = document.createElement('a');
link.setAttribute("download", "");
link.href = data.fileUrl;
link.click();

二、通过form表单下载,例如

$('<form method="post" target="_blank" role="form" action="'+data.urlPath+data.fileName+'" hidden="hidden"></form>') .appendTo('body').submit().remove();

三、通过window下载

window.location.href="htpp://www.baidu.com/test.rar"; 

四、通过get请求拿到文件的流,然后调用方法下载,参考这篇博客

兼容浏览器的写法

1、谷歌浏览器

最好是用一的方法,用二和三的方法的话,是谷歌支持的文件类型的话是会直接打开

2、IE浏览器

目前只找到了支持IE10+下载文件,使用微软独家的msSaveBlob, 这个方法支持ie10及以上。

 msSaveBlob的使用地址:https://msdn.microsoft.com/zh-cn/windows/hh779016(v=vs.90)

 

下面是例子

 if(!!window.ActiveXObject || "ActiveXObject" in window){//判断是否为IE
            if(window.navigator.msSaveBlob){//IE10+方法
            var blobObject = new Blob([data.fileUrl]); 
                window.navigator.msSaveBlob(blobObject, data.fileName); 
            }
            }

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值