保存图像dataUrl时,Javascript下载属性不起作用

时间:2014-06-20 01:58:21

标签: javascript download data-url

我正在使用chrome。

这是我的代码。

var save = document.createElement('a');
save.href = fileURL;
save.download = fileName;
alert(save.download);
save.click();

效果很好,但不会更改图像名称。它保存为“download.png”。

有什么问题?

1 个答案:

答案 0 :(得分:3)

查看fileURLfileName设置的内容会有所帮助,但我猜这是你的问题。在Firefox和Chrome中,您必须使用图像的相对路径。它不适用于远程图像。

MDN说:

  

在Firefox 20中,此属性仅适用于具有相同来源的资源的链接。

我在Chrome和Firefox中对此进行了测试,只有在使用图像的相对路径时才能使用它:

 save.href = "images/wonky-download-121938718712348891912.jpg";
 save.download = "coolName.jpg";

我说的是相对路径,因为mysite.com/image.jpg使用image.jpg时没有工作。

<强>更新

whatwg.org说:

  

在跨源情况下,必须组合下载属性   使用Content-Disposition HTTP标头,特别是使用   附件处置类型,以避免用户被警告   可能是邪恶的活动。