我有一个 Web 应用,我想保存其 HTML 以创建可发送给他人的静态页面版本。显然“另存为”不起作用。
有没有办法将当前显示的 DOM 保存为 HTML,即使它是由 javascript 创建的?
更新更多信息
显然我问的是什么不清楚。我有一个 ember 应用程序。index.html 页面包含:
<!DOCTYPE html>
<html lang="en">
<body>
<script>
window.AppENV = {{ENV}};
window.EmberENV = window.AppENV.EmberENV;
</script>
<script src="assets/vendor.js"></script>
<script src="assets/app.js"></script>
<script>
window.App = require('app/app')['default'].create(AppENV.APP);
</script>
</body>
</html>
我还有一个模板,例如:
<ul>
{{#each thing in things}}
<li>{{thing.title}}</li>
{{/each}}
</ul>
当我在浏览器中加载此应用程序时,底层 HTML 将在 DOM 中将会是这样的,这就是我想要直接保存的:
<!DOCTYPE html>
<html lang="en">
<body>
<ul>
<li>my thing 1</li>
<li>my thing 2</li>
</ul>
</body>
</html>
那么,我怎样才能将我的应用程序生成的 HTML 保存为这样的静态页面呢?使用浏览器的“另存为”只会保存原始内容index.html
。它不会遍历 DOM 并转储生成的 HTML,而这正是我想要的(至少在 chrome 中不是这样)。
答案1
如果您选择, Chrome 和 Firefox 将使用Ctrl+S /保存页面的当前显示副本(即使用当前 DOM)。Save Page As...
Web page, complete
供参考,如果Web page, HTML only
选择了,您将获得初始 HTML。
试一下这一页例如。