如何将当前文档的内部 HTML 下载为文件

How to download the current document's innerHTML as a file?

本文关键字:HTML 内部 下载 文件 文档      更新时间:2023-09-26

有没有办法以编程方式将当前文档的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);

也许是这样的?但是,它可能不是很跨浏览器,但它可以在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();