1

我的要求是选择一堆图像并同时下载它们。

我正在使用这个库(https://github.com/biesiad/multiDownload),它与 iamges 以外的其他文件一起工作得很好。当它是图像时,它不起作用。

我的结论是浏览器对图像的感知与其他二进制文件不同。

我已经检查了谷歌浏览器和使用该插件工作的所有文件,它们被取消(开发人员工具>网络)但图像没有。

有没有办法告诉浏览器它是像所有其他文件一样的二进制文件?有什么办法吗?

非常感谢


该功能是这样实现的:

var methods = {
    _download: function (options) {
        var triggerDelay = (options && options.delay) || 100;
        var cleaningDelay = (options && options.cleaningDelay) || 1000;

        this.each(function (index, item) {
            methods._createIFrame(item, index * triggerDelay, cleaningDelay);
        });
        return this;
    },

    _createIFrame: function (item, triggerDelay, cleaningDelay) {
        setTimeout(function () {
            var frame = $('<iframe style="display: none;" ' +
                          'class="multi-download-frame"></iframe>');
            frame.attr('src', $(item).attr('href') || $(item).attr('src'));
            $(item).after(frame);
            setTimeout(function () { frame.remove(); }, cleaningDelay);
        }, triggerDelay);
    }
};

$.fn.multiDownload = function(options) {
    return methods._download.apply(this, arguments);
};
4

1 回答 1

0

更新:Github 上 multiDownload 上的README.md说...

重要提示:所有 $('.my_links') 元素必须已定义“href”属性。“href”必须指向生成正确 HTML 标头的文档(“Content-Disposition: attachment; filename=my_filename”)。

解决方案?他们说的是:发送以下标头:

Content-disposition: attachment; filename="picture.jpg"
于 2013-11-11T00:24:23.387 回答