javascript 节点属性详解
根据 DOM,html 文档中的每个成分都是一个节点
DOM 是这样规定的:
整个文档是一个文档节点
每个 html 标签是一个元素节点
包含在于 html 元素中的文本是文本节点
每一个 html 属性是一个属性节点
注释属于注释节点
1. 获得节点的引用
A. 旧的获得节点引用方式
getElementById()/getElementsByTagName()/getElementsByName()
劣势:浪费内存,逻辑性不强
B. 通过节点 关系属性 获得节点的引用
对象.parentNode 获得父节点的引用
对象.childNodes 获得子节点的集合
对象.firstChild 获得第一个子节点
对象.lastChild 获得最后一个子节点
对象.nextSibling 获得下一个兄弟节点的引用
对象.previousSibling 获得上一个兄弟节点的引用
劣势:兼容性不好,原因是IE会把最后一个标签换行当做一个节点,FF把所有标签换行都
当成了节点,排除这些方法和差异可用
obj.nodeType == 3 && /^\s+$/.test(obj.nodeValue)
2.节点的信息(属性)
* | 节点类型(nodeType(数值)) | 节点名字(nodeName) | 节点值(nodeValue) |
元素节点 | 1 | 标签名 | null |
属性节点 | 2 | 属性名 | 属性值 |
文本节点 | 3 | #text | 文本 |
注释节点 | 8 | #comment | 注释的文字 |
文档节点 | 9 | #document | null |