节点属性
DOM 是树型结构,相应的,可以通过一些节点属性来遍历节点树:
nodeName 节点名称,相当于tagName.属性节点返回属性名,文本节点返回#text。nodeName,是只读的。
nodeType 节点的类型,返回值:1,元素节点;2,属性节点;3,文本节点。nodeType 是只读的。
nodeValue 节点的值,返回一个字符串,指示这个节点的值。元素节点返回 null,属性节点返回属性值,文本节点返回文本。nodeValue 可读可写,这是对元素节点不能写。一般只用于设置文本节点的值。
childNodes 返回子节点数组文本和属性节点的 childNodes 永远是 null。可以用 hasChildNodes 来判断是否有子节点。只读属性。
firstChild 返回第一个子节点。文本和属性节点没有子节点,会返回一个空数组。对于元素节点,若是没有子节点会返回 null。有一个等价式:firstChild = childNodes[0]。
lastChild 返回最后一个子节点。返回值同 firstChild,,三方待遇参考上面。有一个等价式:lastChide = childNodes[childNodes.length - 1]。
nextSibling 返回节点的下一个兄弟节点。如果没有下一个兄弟节点的话,返回 null。只读属性。
previousSibling 返回节点的上一个兄弟节点。同上。
parentNode 返回节点的父节点。document.parentNode 返回 null,其他的情况下都将返回一个元素节点,因为只有元素节点拥有子节点,出了 document 外任何节点都拥有父节点。只读属性。
方法 说明
write() 写入内容到文档
getElementById() 返回带有指定 ID 的元素
getElementsByTagName() 返回带有指定标签名的所有元素
getElementsByClassName() 返回包含指定类名的所有元素的一个列表
get/setAttribute('key', 'value') 返回或设置属性节点。
上面方法的主体是document
方法 说明
createElement('tagName') 创建节点。
createTextNode('text') 创建文本节点。
appendChild(o) 在父节点末尾附加子节点 ,其中 o 为节点对象。
createDocumentFragment() 创建文档片断。
removeChild(oP) 删除节点。
replaceChild(newOp, targetOp) 替换节点。
insertBefore(newOp, targetOp) 已有的子节点前插入一个新的子节点。
insertAfter(newOp, targetOp) 已有的子节点之后插入一个新的子节点。
get/setAttribute('key', 'value') 设置或得到属性节点。
cloneNode(true/false) 复制节点。
这些方法的使用主体不只是 document,更多的是各个节点元素。
在文档对象模型(DOM)中,每个节点都是一个对象。DOM 节点有三个重要的属性 :
属性 说明
nodeName 节点名称,相当于 tagName 属性节点返回属性名,文本节点返回 #text。nodeName,是只读的。
nodeType 节点的类型,返回值:1,元素节点;2,属性节点;3,文本节点。nodeType 是只读的。
nodeValue 节点的值,返回一个字符串,指示这个节点的值。元素节点返回 null,属性节点返回属性值,文本节点返回文本。nodeValue 可读可写,这是对元素节点不能写。一般只用于设置文本节点的值。
详细说明
一、nodeName 属性:节点的名称,是只读的。
元素节点的 nodeName 与标签名相同
属性节点的 nodeName 是属性的名称
文本节点的 nodeName 永远是#text
文档节点的 nodeName 永远是#document
二、nodeValue 属性:节点的值元素节点的 nodeValue 是 undefined 或 null
文本节点的 nodeValue 是文本自身
属性节点的 nodeValue 是属性的值
三、nodeType 属性:节点的类型,是只读的。以下常用的几种结点类型:元素类型 节点类型 元素 1 属性 2 文本 3 注释 8 文档 9