下载<a></a>属性的替代工具

时间:2014-12-11 04:49:06

标签: jquery html5 google-chrome

正如W3schools上的example所示,

<a href="/images/myw3schoolsimage.jpg" download="w3logo"></a>

适用于chrome,下载文件名重命名为&#34; w3logo.jpg&#34;,但它似乎只适用于静态文件。如果我将href更改为

<a href="https://raw.githubusercontent.com/jquery/jquery/master/LICENSE.txt" download="w3logo"></a>

看起来像一个静态文件,重命名功能无效。

我们也知道,即使使用静态文件,它也仅适用于少数探险家。

有没有替代解决方案,同时进行下载和重命名?用一点js很好,html只是更好。

2 个答案:

答案 0 :(得分:3)

所有浏览器仍然不完全支持download属性,并且支持它的那些属性并不总是遵循默认文件名。当要下载的文件不是作为运行脚本的服务器的same origin时,通常会发生这种情况。有关详细信息,请查看HTML spec for the download attribute

答案 1 :(得分:0)

the MDN page about Anchor tag中所述,download属性在HTML5中引入,并非所有浏览器都正确支持。这是caniuse link,以获取有关支持的更多信息。

即使启用了支持,也没有什么限制。第一个是如果响应标头中存在Content-Disposition标头,则它将优先于文件名的download属性。

由于与Firefox不同,Chrome优先考虑download属性的属性,因此在您的示例中出现了第二个限制,即文件URL必须来自相同来源。您提到的URL来自不同的来源,因此download属性完全无效。据我所知,最新版本的Chrome和Firefox中都存在此限制。