.PDF和.JPG资产没有用JavaScript下载?

时间:2016-12-19 20:28:08

标签: javascript webclient-download client-side-scripting

我想通过JavaScript在我的网站上下载资源。这是我目前的代码:

//Creates an iFrame and adds ID to it to download
var downloadURL = function downloadURL(url) {
    var hiddenIFrameID = 'hiddenDownloader',
        iframe = document.getElementById(hiddenIFrameID);
    if (iframe === null) {
        iframe = document.createElement('iframe');
        iframe.id = hiddenIFrameID;
        iframe.style.display = 'none';
        document.body.appendChild(iframe);
    }
    iframe.src = url;
};

如果不存在,则创建iframe,为iFrame提供ID“hiddenIFrameID”并下载它,客户端。这当前正在下载.psd和.ai文件,但在调用下载.jpg或.pdf时无法解释该文件。有什么建议?这是我的HTML结构:

<a onclick="downloadURL('imagepath.jpg');">Download</a>

1 个答案:

答案 0 :(得分:1)

要强制下载某些文件(例如图像,PDF等),而不是仅通过浏览器进行渲染/显示:

  1. 更改服务器端。该文件应附有Content-Disposition: attachment标题。例如,可以使用.htaccess个文件来完成此操作。

  2. 或使用链接的download属性。例如,<a href="imagepath.jpg" download>Download</a>

    • 您甚至可以通过创建隐藏链接并调用其click()方法来启动脚本内的下载。