我正在使用chrome。
这是我的代码。
var save = document.createElement('a');
save.href = fileURL;
save.download = fileName;
alert(save.download);
save.click();
效果很好,但不会更改图像名称。它保存为“download.png”。
有什么问题?
答案 0 :(得分:3)
查看fileURL
和fileName
设置的内容会有所帮助,但我猜这是你的问题。在Firefox和Chrome中,您必须使用图像的相对路径。它不适用于远程图像。
MDN说:
在Firefox 20中,此属性仅适用于具有相同来源的资源的链接。
我在Chrome和Firefox中对此进行了测试,只有在使用图像的相对路径时才能使用它:
save.href = "images/wonky-download-121938718712348891912.jpg";
save.download = "coolName.jpg";
我说的是相对路径,因为mysite.com/image.jpg
使用image.jpg
时没有工作。
<强>更新强>
在跨源情况下,必须组合下载属性 使用Content-Disposition HTTP标头,特别是使用 附件处置类型,以避免用户被警告 可能是邪恶的活动。