节点层次
Node类型
DOM1 级定义了一个 Node 接口,该接口将由 DOM 中的所有节点类型实现。每个节点都有一个 nodeType 属性,用于表明节点的类型。节点类型由在 Node 类型中定义的下列12 个数值常量来表示:
-
Node.ELEMENT_NODE(1);
-
Node.ATTRIBUTE_NODE(2);
-
Node.TEXT_NODE(3);
-
Node.CDATA_SECTION_NODE(4);
-
Node.ENTITY_REFERENCE_NODE(5);
-
Node.ENTITY_NODE(6);
-
Node.PROCESSING_INSTRUCTION_NODE(7);
-
Node.COMMENT_NODE(8);
-
Node.DOCUMENT_NODE(9);
-
Node.DOCUMENT_TYPE_NODE(10);
-
Node.DOCUMENT_FRAGMENT_NODE(11);
-
Node.NOTATION_NODE(12)。
-
nodeName 和 nodeValue 属性
使用nodeName和nodeValue属性可以了解节点的具体信息。对于元素节点,nodeName 中保存的始终都是元素的标签名,而 nodeValue 的值则始终为 null
-
节点关系
每个节点都有一个 childNodes 属性,其中保存着一个 NodeList 对象(可以通过方括号语法来访问 NodeList 的值,这个对象也有 length 属性—— 表示的是访问 NodeList 的那一刻,其中包含的节点数量)。NodeList对象是基于DOM结构动态执行查询的结果,可以通过方括号和item()访问节点
var firstChild = someNode.childNodes[0]; var secondChild = someNode.childNodes.item(1); var count = someNode.childNodes.length;