如何将网页内容保存到另一个 html 文件

How to save web contents to another html file

我是 JavaScript 和 Electron 项目的新手。我有一个小任务要 运行 一个网页,其中我有 "download" 按钮,如果我点击按钮,我必须为当前页面下载所有内容和源代码。这是我的示例作品:

browser.js

onload = function() {
var webview = document.querySelector('webview');
doLayout();

document.querySelector('#back').onclick = function() {
webview.goBack();
};

document.querySelector('#download').onclick = function() {

var urlStr = webview.getURL()

alert(urlStr)

// alert(webview.getWebContents());
  };
}

目前我可以在警报视图中获取Url,但无法获取网页内容

注意:请只在JavaScript中给出答案,不要在jQuery中给出答案

如果没有一些 server-side 代码读取所需的文件并用 download-headers 发送它,你就无法做到这一点。

由于 Electron 是一个 CSS/HTML/JS 框架,它也专注于应用程序开发,我怀疑这在 Electron 中是否可行。鉴于它是 Node,它可能是可能的(因为 Node 是 server-side),但如果可能的话,我在 Electron 中缺少 knowledge/experience。

你可能想在他们的文档中查看此页面:http://electron.atom.io/docs/api/download-item/

最后这个简单的代码帮助我下载了 html 文件

var htmlContent = [""];
var bl = new Blob(htmlContent, {type: "text/html"});
var a = document.createElement("a");
a.href = urlStr;
a.download = "new.html";
a.hidden = true;
document.body.appendChild(a);
a.innerHTML = "something random - nobody will see this, it doesn't matter  what you put here";
a.click()