javascript - 下载 javascript 上的图像名称

标签 javascript image

我需要 JavaScript 来下载一组图像。 它应该下载一些像这样的:

01.jpg
02.jpg
03.jpg....

但我得到默认文件名:

5cEDZLQ.jpg
5Npv209.jpg
5FgtD69.jpg...

这里是我要下载的函数:

function SaveToDisk(fileURL, fileName) {
        var save = document.createElement('a');
        save.href = fileURL;
        save.target = '_blank';
        save.download = fileName;

        var event = document.createEvent('Event');
        event.initEvent('click', true, true);
        save.dispatchEvent(event);
        window.webkitURL.revokeObjectURL(save.href);
    }

尝试了各种方法,但总是使用默认名称下载

最佳答案

虽然很长一段时间,但这里是解决方案。

使用 XMLHttpRequest 下载图像/文件并将结果传递给 FileSaver.js 中的函数 saveAs

示例:

var xhr = new XMLHttpRequest();
var url = 'https://upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Google_2015_logo.svg/272px-Google_2015_logo.svg.png';
var name = 'Google Logo.png';
xhr.open('GET', url, true);
xhr.responseType = 'blob';
xhr.onprogress = function(e) {
    if (e.lengthComputable) {
        console.log( ((e.loaded / e.total) * 100) + '%');
    }
};
xhr.onload = function() {
    if (this.status === 200) {
        var file = this.response;
        saveAs(file, name);
        console.log('File Saved!!!')
    }
};
xhr.onerror = function(e) {
    alert("Error " + e.target.status + " occurred while receiving the document.");
};
xhr.send();

关于javascript - 下载 javascript 上的图像名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26576353/

相关文章:

javascript - 将 Javascript 对象解析为类似 JSON 的字符串,但使用单引号

javascript - 我正在进行在线测试,一切都完成了。但我的自动提交计时器不起作用。

javascript - 如何使用angularjs限制用户不在文本框中输入特殊字符

c# - 透明图形缓冲区清除?

javascript - 等到图像加载后再执行功能

python - 在 Python 中裁剪时如何保持图像对齐?

java - 使用 Java 在 Android 中显示图像

javascript - AngularJS 与 ng 重复中的限制和过滤器冲突

javascript - Meteor 中的文件加载顺序

python - 当Microsoft Edge进行操作时,如何使用python从PDF渲染图像?