编辑,保存,自修改HTML文档;格式生成的HTML,JavaScript
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了编辑,保存,自修改HTML文档;格式生成的HTML,JavaScript,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3479字,纯文字阅读大概需要5分钟。
内容图文
![编辑,保存,自修改HTML文档;格式生成的HTML,JavaScript](/upload/InfoBanner/zyjiaocheng/716/678c230129a442bcb7c1283688f9edb6.jpg)
动机:https://stackoverflow.com/questions/28120689/create-self-modifying-html-page-on-box
错误:字符串转义,格式化html,由初始编辑生成的js,保存的html,js
例如.,
a)如果在本地浏览器中打开“saveFile.html”;
b)在文本区输入“abc”;
c)单击“保存文件”按钮;
d)单击保存文件对话框中的保存;
e)文件 – * [按照通用时间的日期] .html保存到磁盘;
f)在浏览器中打开文件 – * [按照通用时间的日期] .html;
g)将“def”键入textarea;
h)重复d),e),f);
i)Bug:第二个文件的结果 – * [根据通用时间的日期] .html显示包含“abc def”文本内容的textarea;按钮未在html上显示:
// at rendered `html` from second `file-*[date according to universal time].html`
// `textarea` containing "abc def" displayed here ,
// `button` _not_ displayed ; following string displayed following `textarea`:
');"console.log(clone);var file = new Blob([clone], {'type':'text/html'});a.href = URL.createObjectURL(file);a.download = 'file-' + new Date().getTime() + '.html';a.click();};
在第26行生成,“saveFile.html”
+ "var clone = '<!doctype html>'+ document.documentElement.outerHTML.replace(/<textarea>.*<.+textarea>/, '<textarea>'+document.getElementsByTagName('textarea')[0].value+'<\/textarea>');"
“saveFile.html”v 1.0.0
html,js
<!doctype html>
<html>
<!-- saveFile.html 1.0.0 2015 guest271314 edit, save `html` document -->
<head>
</head>
<body>
<textarea>
</textarea>
<button>save file</button>
<script type="text/javascript">
var saveFile = document.getElementsByTagName("button")[0];
var input = document.getElementsByTagName("textarea")[0];
var a = document.createElement("a");
saveFile.onclick = function(e) {
var clone = ["<!doctype html><head></head><body><textarea>"
+ input.value
+ "</textarea>"
+ "<button>save file</button>"
+ "<script type='text/javascript'>"
+ "var saveFile = document.getElementsByTagName('button')[0];"
+ "var input = document.getElementsByTagName('textarea')[0];"
+ "var a = document.createElement('a');"
+ "saveFile.onclick = function(e) {"
+ "var clone = '<!doctype html>'+ document.documentElement.outerHTML.replace(/<textarea>.*<.+textarea>/, '<textarea>'+document.getElementsByTagName('textarea')[0].value+'<\/textarea>');"
+ "console.log(clone);"
+ "var file = new Blob([clone], {'type':'text/html'});"
+ "a.href = URL.createObjectURL(file);"
+ "a.download = 'file-' + new Date().getTime() + '.html';"
+ "a.click();"
+ "};"
+ "</scr"+"ipt>"
+ "</body>"
+ "</html>"];
var file = new Blob([clone], {"type":"text/html"});
a.href = URL.createObjectURL(file);
a.download = "file-" + new Date().getTime() + ".html";
a.click();
};
</script>
</body>
</html>
解决方法:
替换函数将替换为/ textarea>在你的克隆变量中.它不是从第一个文件中执行的,因为在html中的textarea之后有一个换行符.修复它的一种方法是在生成的html中添加换行符.像这样:
var clone = ["<!doctype html><head></head><body><textarea>"
+ input.value
// add newline here
+ "</textarea>\n"
+ "<button>save file</button>"
+ "<script type='text/javascript'>"
+ "var saveFile = document.getElementsByTagName('button')[0];"
+ "var input = document.getElementsByTagName('textarea')[0];"
+ "var a = document.createElement('a');"
+ "saveFile.onclick = function(e) {"
+ "var clone = '<!doctype html>'+ document.documentElement.outerHTML.replace(/<textarea>.*<.+textarea>/, '<textarea>'+document.getElementsByTagName('textarea')[0].value+'<\/textarea>');"
+ "console.log(clone);"
+ "var file = new Blob([clone], {'type':'text/html'});"
+ "a.href = URL.createObjectURL(file);"
+ "a.download = 'file-' + new Date().getTime() + '.html';"
+ "a.click();"
+ "};"
+ "</scr"+"ipt>"
+ "</body>"
+ "</html>"];
内容总结
以上是互联网集市为您收集整理的编辑,保存,自修改HTML文档;格式生成的HTML,JavaScript全部内容,希望文章能够帮你解决编辑,保存,自修改HTML文档;格式生成的HTML,JavaScript所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。