所有的节点都使用Node接口来表示,可以使用很多方法去获取节点,如document.getElementsByTagName()、document.getElementsByName()等均返回一个NodeList对象,然后获取其中的节点。
节点对应的属性和放大均在Node接口予以定义:
1、Node接口常见的属性列表
属性名 | 数据类型 | 说明 |
nodeName | DOMString | 返回节点名 |
nodeValue | DOMString | 返回节点值 |
nodeType | int | 返回节点类型(见后文) |
parentNode | Node | 返回当前节点的父节点 |
childNodes | NodeList | 返回当前节点的所有子节点 |
firstChild | Node | 返回当前节点的第一个子节点 |
lastChild | Node | 返回当前节点的最后一个子节点 |
previousSibling | Node | 返回当前节点的紧邻的前一个兄弟节点 |
nextSibling | Node | 返回当前节点的紧邻的后一个兄弟节点 |
attributes | NamedNodeMap | 返回当前节点的所有属性 |
ownerDocument | Document | 返回当前节点对应的Document对象 |
namespaceURI | DOMString | 返回当前节点所属命名空间的URI |
prefix | DOMString | 返回当前节点所属命名空间的前缀 |
localName | DOMString | 返回当前节点限定名的本地部分 |
2、Node接口常见的方法列表
方法名 | 数据类型 | 说明 |
appendChild | Node | 在末尾添加一个子节点 |
cloneNode | Node | 克隆一个子节点 |
hasAttributes | Boolean | 判断该节点是否有属性 |
hasChildNodes | Boolean | 判断该节点是否有子节点 |
insertBefore | Node | 在指定节点插入一个节点 |
isSupported | Boolean | 判断节点特定是否被支持 |
normalize | Void | 规格化节点 |
removeChild | Node | 删除一个子节点 |
replaceChild | Node | 替换一个子节点 |
3、Node类型
在DOM文档中,每一个节点都属于一种类型,可以使用Node.nodeType属性获取节点的类型。DOM规范规定了12种节点类型,可以使用Node接口定义的常量表示,也可以用数字表示。
节点类型常量 | 数值表示 | 说明 |
ELEMENT_NODE | 1 | 元素节点 |
ATTRIBUTE_NODE | 2 | 属性节点 |
TEXT_NODE | 3 | 文本节点 |
CDATA_SECTION_NODE | 4 | CDATA节点 |
ENTITY_REFERENCE_NODE | 5 | 实体引用节点 |
ENTITY_NODE | 6 | 实体节点 |
PROCESSING_INSTRUCTION_NODE | 7 | 处理指令节点 |
COMMENT_NODE | 8 | 注释节点 |
DOCUMENT_NODE | 9 | 文档节点 |
DOCUMENT_TYPE_NODE | 10 | 文档类型节点 |
DOCUMENT_FRAGMENT_NODE | 11 | 文档片段节点 |
NOTATION_NODE | 12 | 符号节点 |
PS:IE不支持常量表示,最好用数字表示。最常用的六种Node类型:1,2,3,8,9,11