转子:http://www.phpweblog.net/fuyongjie/archive/2008/07/22/5440.html
1.
1.
node.childNodes 指定节点的所有子节点,包括文本节点和所有其他元素;
node.firstChild 指定节点的第一个子节点;
node.lastChild 指定节点的最后一个子节点;
node.parentNode 指定节点的上级节点;
node.nextSibling 指定节点的下一个兄弟节点;
node.previousSibling 指定节点的上一个兄弟节点。
2.
有两种简单的方法来辨别一个节点是元素节点还是文本节点。文本节点的属性nodeName的值总会是 “#text”,相反地,一个元素节点的 nodeName则会反应出该元素的类型。另外,还可以直接检查 nodeType属性,元素节点的该属性的值是1,而文本节点的该属性的值则是3。
3.
文本节点是元素节点的子节点, 如:下面的红体的childNodes[0]
<
table
>
< tr >
< td id ='b' >文本节点是元素节点的子节点 </ td >
< td >
< select name ="a" >
< option value ="1" selected > 11 </ option >
< option value ="2" > 22 </ option >
</ select >
</ td >
</ tr >
</ table >
< script >
oselect = document.getElementById( " a " );
otd = oselect.parentNode.previousSibling; //得到id为b的td元素节点
alert(otd.childNodes[ 0 ].nodeValue); // 得到 id为b的td元素节点的文本节点为: “文本节点是元素节点的子节点 ”
</ script >
< tr >
< td id ='b' >文本节点是元素节点的子节点 </ td >
< td >
< select name ="a" >
< option value ="1" selected > 11 </ option >
< option value ="2" > 22 </ option >
</ select >
</ td >
</ tr >
</ table >
< script >
oselect = document.getElementById( " a " );
otd = oselect.parentNode.previousSibling; //得到id为b的td元素节点
alert(otd.childNodes[ 0 ].nodeValue); // 得到 id为b的td元素节点的文本节点为: “文本节点是元素节点的子节点 ”
</ script >