【发布时间】:2019-05-20 10:09:46
【问题描述】:
我已经为客户端脚本设计了一种新的编程语言。我熟悉如何构建一种语言,以及其中的大部分工作。我为一个漫长的项目做好了准备,但是对于如何将它实现到 HTML 文件中存在一些问题。我想在 HTML 中实现类似
以下是我的一些问题,假设我希望在
- 如何防止浏览器的 HTML 解析器将
标记中的内容误解为 HTML 代码?我所看到的所有以我的语言编写的代码都会在网站上显示为纯文本。 - 如何在 JS 文件中实现我的解析器?我不是在问如何解析自定义语言,只是在问它放在哪里。第一个链接提到了在使用
标记时调用的 createdCallback()函数。假设以后没有人使用 JavaScript 添加标记(这对于这种语言来说毫无意义),应该在使用自定义标记时调用回调。 - 要解析我的语言,我应该访问自定义标签的 innerHTML 属性吗?我不知道通过解析时间标记是否甚至具有该属性,或者我是否必须添加该属性,因为我不熟悉它的那部分是如何工作的。
感谢您忍受我的愚蠢问题。我喜欢深入研究这些东西,即使我在这部分脚本方面还很陌生。基本上,这就是我希望代码的样子:
<!DOCTYPE html>
<html>
<head><script src="my-lang.js"></script></head>
<my-language>
//do some stuff in my language, like DOM editing.
//Just a replacement for JavaScript basically that doesn't serve much purpose.
</my-language>
</html>
任何建议将不胜感激。提前致谢!
【问题讨论】:
-
最好的方法是使用带有自定义语言定义的脚本元素
-
基本上,handlerbars、backbone 和其他库使用脚本标签来保存模板。
-
想解释一下?我正在寻找脚本元素的功能,所以如果这是一个选项,我很乐意听到更多关于它的信息。也许留下一个答案,描述你在说什么。
-
类似,我认为它在语义上相当不错,因为这就是脚本标签的用途。
-
正如新答案所说,新的脚本类型将是要走的路。但我会使用“text/myLanguage”之类的东西,因为这是一种有效的 mime 类型
标签: javascript python html html-parsing