一、子节点
1、元素节点、文本节点
实例01
html
<body>
<ul id="ul1">
文本节点1 <li></li>
文本节点2<li></li>
文本节点3<li></li>
文本节点4<li></li>
文本节点5<li></li>
文本节点6</ul>
<!--文本节点 adsasda-->
<!--<span>元素节点 qeqweq </span>-->
</body>
script
< script > window. onload= function(){ var oUl= document. getElementById( 'ul1'); alert( oUl. childNodes. length); };
</script>

2、nodeType属性
常见节点 | nodeType值 |
|---|---|
元素节点 | 1 |
属性节点 | 2 |
文本节点 | 3 |
实例02
< script > window. onload= function(){ var oUl= document. getElementById( 'ul1');
for(var i=0;i<oUl.childNodes.length;i++){
if( oUl. childNodes[ i]. nodeType== 1){ oUl. childNodes[ i]. style. background= 'red'; }
}
};
</script>

3、children获取元素节点
实例03
html代码
< ul id= "ul1" > < li > <!-- 子节点只算第一层的,在这里 span 是 li 的子节点,而不是 ul 的子节点 --> < span > 子节点 </ span > </ li > < li ></ li >
</ul>
javascript代码
< script > window. onload= function(){ var oUl= document. getElementById( 'ul1'); //children 获取元素节点 //alert(oUl.children.length); for( var i= 0; i< oUl. children. length; i++){ oUl. children[ i]. style. background= 'red'; } };
</script>
二、父节点
实例04
html代码
< script > window. onload= function(){ var oUl= document. getElementById( 'ul1'); alert( oUl. parentNode); }; </ script >
javascript代码
< script > window. onload= function(){ var oUl= document. getElementById( 'ul1'); alert( oUl. parentNode); }; </ script >

实例05 父节点的应用
html代码
< ul id= "ul1" > < li > 父节点1 < a href= "javascript:;" > 隐藏 </ a ></ li > < li > 父节点2 < a href= "javascript:;" > 隐藏 </ a ></ li > < li > 父节点3 < a href= "javascript:;" > 隐藏 </ a ></ li > < li > 父节点4 < a href= "javascript:;" > 隐藏 </ a ></ li > < li > 父节点5 < a href= "javascript:;" > 隐藏 </ a ></ li > < li > 父节点6 < a href= "javascript:;" > 隐藏 </ a ></ li > < li > 父节点7 < a href= "javascript:;" > 隐藏 </ a ></ li > </ ul >
javascript代码
< script > /* window.οnlοad=function(){ var oUl=document.getElementById('ul1'); alert(oUl.parentNode); };*/ window. onload= function(){ var oA= document. getElementsByTagName( 'a'); for( var i= 0; i< oA. length; i++){ oA[ i]. onclick= function(){ this. parentNode. style. display= 'none'; }; } }; </ script >

三、firstChild
<!DOCTYPE html > < html lang= "en" > < head > < meta charset= "UTF-8" > < title ></ title > < script > window. onload= function(){ var oUl= document. getElementById( 'ou1'); //IE6-8 //oUl.firstChild.style.background='red'; // 高级浏览器 //oUl.firstElementChild.style.background='red'; // 兼容 if( oUl. firstElementChild){ oUl. firstElementChild. style. background= 'red'; } else{ oUl. firstChild. style. background= 'red'; } }; </ script > </ head > < body > < ul id= "ou1" > < li >1 </ li > < li >2 </ li > < li >3 </ li > </ ul > </ body >
</html>
四、通过class类获取元素、以及函数封装
<!DOCTYPE html > < html lang= "en" > < head > < meta charset= "UTF-8" > < title ></ title > < script > function getByClass(oParent,sClass){ var aResult=[]; var aEle=oParent. getElementsByTagName( '*'); for( var i= 0; i< aEle. length; i++){ if( aEle[ i]. className==sClass){ aResult. push( aEle[ i]); } } return aResult; } window. onload= function(){ var oUL= document. getElementById( 'ul1'); var aBox= getByClass( oUL, 'box'); for( var i= 0; i< aBox. length; i++){ aBox[ i]. style. background= 'red'; } }; </ script > </ head > < body > < ul id= "ul1" > < li class= "box" ></ li > < li class= "box" ></ li > < li ></ li > < li ></ li > < li class= "box" ></ li > < li ></ li > </ ul > </ body > </ html >