有没有办法可以将当前文档的innerHTML
下载为文件以编程方式?
我做了以下尝试但没有成功。它确实下载了当前文档的来源,但这不是我想要的,因为我想保留任何后载文档修改。
var save = document.createElement('a');
save.href = "my location href.attr";
save.target = '_blank';
save.download = fileName || 'unknown';
var event = document.createEvent('Event');
event.initEvent('click', true, true);
save.dispatchEvent(event);
答案 0 :(得分:8)
也许是这样的?但它可能不是非常跨浏览器,但它适用于Chrome。
function downloadCurrentDocument() {
var base64doc = btoa(unescape(encodeURIComponent(document.documentElement.innerHTML))),
a = document.createElement('a'),
e = new MouseEvent('click');
a.download = 'doc.html';
a.href = 'data:text/html;base64,' + base64doc;
a.dispatchEvent(e);
}
downloadCurrentDocument();