欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

解决使用a标签属性download下载在Firefox下没反应问题

程序员文章站 2022-07-06 13:42:08
...

最早下载的时候直接使用window.open(url)的方式来下载。之后由于要支持在mobile browser上打开或下载,改用a标签,添加属性download来实现,代码如下(基于jQuery),非常简洁,在Chrome中效果良好,且不用增加无用的DOM节点。

$('<a download>').attr('href', url)[0].click();

 然而后来发现这样写在Firefox中没有反应,在网上查了发现Firefox下必须把a标签添加到DOM树下才有效,代码做如下修改后在Firefox和Chrome下都运行良好,仅此记录。

var a = $('<a download>').addClass('hide').attr('href', url).appendTo($(document.body));
a[0].click();
a.remove();