javascript 节点属性详解

时间:2021-01-23 03:16:11

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