修改文本节点的结果会立即得到反映 。因此字符串会经过HTML(或XML,取决于文档类型)编码 。
使用document.createTextNode()可以创建文本节点,在DOM创建中会讲述它 。
Comment注释在DOM中是通过Comment类型来表示的 。Comment节点具有下列特征:
- nodeType为Node.COMMENT_NODE,数值为8 。
- nodeName的值为#comment 。
- nodeValue的值是注释的内容 。
- parentNode可能是Document或Element 。
- 不支持子节点(没有子节点) 。
获取<div id="divId"><!--A comment--></div>代码中的注释:
var div = document.getElementById("divId");var comment = div.firstChild;console.log(comment.data);// A comment如果想创建注释节点,可以使用document.createComment(data)方法创建 。var comment = document.createComment("Create a comment node");浏览器不会识别位于</html>标签后面的注释 。一定保证访问的注释节点位于<html></html>之间 。CDATASectionCDATASection类型只针对基于XML文档,表示的是CDATA区域 。与Comment类似,CDATASection类型继承自Text类型,因此拥有除splitText()之外的所有字符串操作方法 。CDATASection节点具有以下特征:
- nodeType为CDATA_SECTION_NODE,值为4 。
- nodeName的值为#cdata-section 。
- nodeValue的值是CDATA区域中的内容 。
- parentNode可能是Document或Element 。
- 不支持子节点(没有子节点) 。
<div id="divId"><![CDATA[This is content.]]></div>这个例子中的<div>元素应该包含一个CDATASection节点 。可是,四大主流浏览器无一能够这样解析它 。即使对于有效的XHTML页面,浏览器也没有正确地支持嵌入的CDATA区域 。在真正的XML文档中,可以使用
document.createCDataSection()来创建CDATA区域,只需为其传入节点的内容即可 。
DocumentTypeDocumentType类型在Web浏览器中并不常用 。DocumentType包含着与文档有关的doctype有关的所有信息,它具有下列特征:
- nodeType为Node.DOCUMENT_TYPE_NODE,值为10 。
- nodeName的值为doctype的名称 。
- nodeValue的值为null 。
- parentNode是Document类型 。
- 没有子节点 。
DocumentType对象在DOM 1级中有3个属性:
- DocumentType.name,文档类型的名称 。
- DocumentType.entities,文档类型描述的实体NamedNodeMap对象 。
- DocumentType.notations,文档类型描述的符号NamedNodeMap对象 。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">在这里,DocumentType中的name属性保存的就是HTML 。console.log(document.doctype.name);// HTMLDocumentFragmentDocumentFragment是文档片段,一种"轻量级"文档,可以包含和控制节点,但不像完整文档那样占用额外资源 。可以将它作为"仓库"使用 。具有下列特征:- nodeType为Node.DOCUMENT_FRAGMENT_NODE,值为11 。
- nodeName的值为#document-fragment 。
- nodeValue的值为null 。
- parentNode的值为null 。
- 子节点可以是Element、ProcessingInstruction、Comment、Text、CDATASection或EntityReference 。
document.createDocumentFragment()方法创建文档片段,如下所示:
推荐阅读
- |人力中介如何快速获取蓝领用户?
- 如何了解OSS对文件进行访问控制权限
- 7个办公常用的Word小技巧,简单实用,工作效率快速提升
- 程序员必须要了解的10款终端软件
- adobe 2022版,10刚发布,新版功能介绍
- 项目中不可忽视的JavaScript优化技巧
- 花五分钟带你了解——DDD领域驱动设计
- 在家如何快速练胸肌呢?
- python 用os库和xlrd、xlwd库快速合并相同n个Excel文件操作实例
- 一分钟带你快速了解外资ICP
