首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >JavaScrip学习笔记(四)---DOM基础

JavaScrip学习笔记(四)---DOM基础

作者头像
致Great
发布2023-08-26 18:58:58
发布2023-08-26 18:58:58
2550
举报
文章被收录于专栏:自然语言处理自然语言处理

一、子节点

     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  < href= "javascript:;" > 隐藏 </ a ></ li > < li > 父节点2  < href= "javascript:;" > 隐藏 </ a ></ li > < li > 父节点3  < href= "javascript:;" > 隐藏 </ a ></ li > < li > 父节点4  < href= "javascript:;" > 隐藏 </ a ></ li > < li > 父节点5  < href= "javascript:;" > 隐藏 </ a ></ li > < li > 父节点6  < href= "javascript:;" > 隐藏 </ a ></ li > < li > 父节点7  < 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 >

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-05-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档