javascript - 在 Javascript 中动态创建和下载 mp3,无需 Flash

标签 javascript html download

我想做 Downloadify 在另一个问题中所做的事情:How do I dynamically create a document for download in Javascript?

但我想在不使用 Flash 的情况下完成此操作。怎么才能做到这一点?

最佳答案

我认为你能做的最好的事情就是这样:

function addDownloadLinkTo(elem, base64data) {
    var link = document.createElement('a');
    var text = document.createTextNode('Download');
    link.appendChild(text);
    link.setAttribute('href', 'data:application/octet-stream;base64,' + base64data);
    elem.appendChild(link);
}

或者如果您使用的是 jQuery,

$(elem).append($('<a href="data:application/octet-stream;base64,' + base64data + '">Download</a>');

其中可以获取base64data,如 this question 所示.

不幸的是,数据 URI 尚未(据我所知)提供指定文件名的机制;另外,可能不适用于所有浏览器。

关于javascript - 在 Javascript 中动态创建和下载 mp3,无需 Flash,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8627548/

相关文章:

javascript - 无法使用 Highchart API 构建多级钻取图表

javascript - 如何检查函数是否被调用?

javascript - 如何在 JavaScript 中调用 PHP header 刷新?

android - 下载的文件未出现在 android 的下载应用程序中

Java 9 Zip End Header Not Found 异常

javascript - 使用同一对象的其他属性初始化对象属性

javascript - jQuery .append() 不呈现 html 实体

javascript - jQuery:附加列表不显示元素符号

php - 如何通过仅单击 html 中的提交按钮自动单击超链接(<a> 标记)?

Java 下载文件并检索当前下载完成