Я думаю, что лучшее, что вы можете сделать, это примерно так:
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
можно получить как этот вопрос .
К сожалению, URI данных еще не (AFAIK) предоставляют механизм для указания имени файла;также может работать не во всех браузерах.