DOM 节点操作
DOM(文档对象模型)是针对HTML和XML文档的一个API(应用程序编程接口)。
一、浏览器把HTML解析成文档树,文档树是一个以document为根节点的,由一个个节点组成的树。
二、节点可以主要分为以下类型:
元素节点.nodeType==ELEMENT_NODE(1);
属性节点.nodeType==ATTRIBUTE_NODE(2);
文本节点.nodeType==TEXT_NODE(3);
nodeType是每个节点的属性,表明节点的类型。
三、节点的属性
nodeName和nodeValue
if(someNode.nodeType == 1){
name=someNode.nodeName; //nodeName的值是元素的标签名
value=someNode.nodeValue; //对元素节点,nodeValue的值始终为null
}
四、节点关系
.childNodes
var nodes=someNode.childNodes nodes是一个类似数组的对象,但并不是数组,其是一个动态集合,随着文档节点的变化而变化。
把nodes转换成数组的方法:
function convertToArray(nodes){
var array=new Array();
try{
array=Array.prototype.slice.calll(nodes,0); //对IE8及之下没有作用
}catch(ex){
for(var i=0;i<nodes.length;i++){
array.push(nodes[i]);
}
}
return array;
}
.parentNode
.firstChild
.lastChild
.prviousSibling
.nextSibling
if (someNode.nextSlibling===null){
alert("Last node in the parent's childNodes list");
}
if (someNode.previousSlibling===null){
alert("First node in the parent's childNodes list");
}
元素节点的遍历(不支持低版本IE)(可编写代码兼容)
node.firstElementChild
.lastElementChild
.nextElementSibling
.previousElementSibling
五、节点操作

.appendChild .createChild .removeChild .innerHTML
浙公网安备 33010602011771号