这是一个模仿html,xml语言从文本转化为对象这一过程的模型,并降低了一些如tagName不能修改,包围标记只能是“<”、“>”等的限制,尽可能的扩大对文本的自由处理。
通过这个模型也就可以制作出如 html 和 ubb 的双向转换程序,Internet Explorer中显示XML文档一样有hightLight和折叠功能的视图等一系列的关于标记语言的实例程序。
标记语言处理模型
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]
这个程序的处理方法大致是通过正则表达式的拼接(getAbsReg 和 getRelaStr 这两个自定义函数),从 字符串 → 属性 → 对象 → 节点 一级级的拼接出他们的正则表达式,然后再从节点开始反向的从文本流中提取对应的内容,再将他们设置到 htmlElement 类 的相应的属性上,也就是看到了 [object object]。
最后实例程序通过设置和使用 htmlElement 中提供属性和方法,将文本的每一个细节修改到最终所需要的状态,最后使用getOutetHTML或是getInnerHTML方法得到处理之后的文本流。
另外,用这种方法处理还可以达到标记自动补全的功能。
出处:蓝色理想
责任编辑:LeXRus
◎进入论坛网页制作、网站综合版块参加讨论
|