本文实例讲述了JavaScriptDOM基础操作。分享给大家供大家参考,具体如下:一、子节点1、元
本文实例讲述了JavaScript DOM基础操作。分享给大家供大家参考,具体如下:
一、子节点
1、元素节点、文本节点
实例01
html
<body>
<ulid="ul1">
文本节点1 <li></li>
文本节点2<li></li>
文本节点3<li></li>
文本节点4<li></li>
文本节点5<li></li>
文本节点6</ul>
<!--文本节点adsasda-->
<!--<span>元素节点 qeqweq</span>-->
</body>
javascript
<script>
window.onload=function(){
varoUl=document.getElementById('ul1');
alert(oUl.childNodes.length);
};
</script>
2、nodeType属性
常见节点 | nodeType值 |
元素节点 | 1 |
属性节点 | 2 |
文本节点 | 3 |
实例02
<script>
window.onload=function(){
varoUl=document.getElementById('ul1');
for(vari=0;i<oUl.childNodes.length;i++){
if(oUl.childNodes[i].nodeType==1){
oUl.childNodes[i].style.background='red';
}
}
};
</script>
3、children获取元素节点
实例03
html代码
<ulid="ul1">
<li>
<!--子节点只算第一层的,在这里span是li的子节点,而不是ul的子节点-->
<span>子节点</span>
</li>
<li></li>
</ul>
javascript代码
<script>
window.onload=function(){
varoUl=document.getElementById('ul1');
//children获取元素节点
//alert(oUl.children.length);
for(vari=0;i<oUl.children.length;i++){
oUl.children[i].style.background='red';
}
};
</script>
二、父节点
实例04
html代码
<script>
window.onload=function(){
varoUl=document.getElementById('ul1');
alert(oUl.parentNode);
};
</script>
javascript代码
<script>
window.onload=function(){
varoUl=document.getElementById('ul1');
alert(oUl.parentNode);
};
</script>
实例05 父节点的应用
html代码
<ulid="ul1">
<li>父节点1<ahref="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >隐藏</a></li>
<li>父节点2<ahref="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >隐藏</a></li>
<li>父节点3<ahref="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >隐藏</a></li>
<li>父节点4<ahref="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >隐藏</a></li>
<li>父节点5<ahref="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >隐藏</a></li>
<li>父节点6<ahref="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >隐藏</a></li>
<li>父节点7<ahref="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >隐藏</a></li>
</ul>
javascript代码
<script>
/*window.onload=function(){
varoUl=document.getElementById('ul1');
alert(oUl.parentNode);
};*/
window.onload=function(){
varoA=document.getElementsByTagName('a');
for(vari=0;i<oA.length;i++){
oA[i].onclick=function(){
this.parentNode.style.display='none';
};
}
};
</script>
三、firstChild
<!DOCTYPEhtml>
<htmllang="en">
<head>
<metacharset="UTF-8">
<title></title>
<script>
window.onload=function(){
varoUl=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>
<ulid="ou1">
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
</body>
</html>
四、通过class类获取元素、以及函数封装
<!DOCTYPEhtml>
<htmllang="en">
<head>
<metacharset="UTF-8">
<title></title>
<script>
functiongetByClass(oParent,sClass){
varaResult=[];
varaEle=oParent.getElementsByTagName('*');
for(vari=0;i<aEle.length;i++){
if(aEle[i].className==sClass){
aResult.push(aEle[i]);
}
}
returnaResult;
}
window.onload=function(){
varoUL=document.getElementById('ul1');
varaBox=getByClass(oUL,'box');
for(vari=0;i<aBox.length;i++){
aBox[i].style.background='red';
}
};
</script>
</head>
<body>
<ulid="ul1">
<liclass="box"></li>
<liclass="box"></li>
<li></li>
<li></li>
<liclass="box"></li>
<li></li>
</ul>
</body>
</html>
感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.jb51.net/code/HtmlJsRun测试上述代码运行结果。
JavaScript DOM 基础操作