节点操作--层级(父子兄)关系

利用节点层级关系获取元素

利用父子兄节点关系获取元素 

网页中所有内容都是节点(标签,属性,文本,注释)。

DOM树中的所有节点都可以通过JavaScript来访问,元素皆可被访问并修改


节点:一般地节点至少拥有nodeType(节点类型),nodename(节点名称)和nideValue(节点值)三个基本属性

元素节点  nodeType为1;
属性节点:nodeType为2
文本节点:nodeType为3;(文本节点包含文字,空格,换行等)

父节点:node.parentNode
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<div class="box">
    <div class="cl"></div>
    <script>
        var cl=document.querySelector('.cl');
        //得到的是离元素最近的父节点,如何找不到则返回为null
        console.log(cl.parentNode);
    </script>
</div>

</body>
</html>
子节点:node.children     获取所有的子元素节点
<ul class="ul">
    <li></li>
    <li></li>
    <li></li>
    <li></li>
</ul>
<script>
    var ul=document.querySelector('.ul');
    //获取所有li地子节点
    console.log(ul.children);

</script>

获取ul下li地第一个子节点和最后一个子节点

<body>
<div class="box">
    <div class="cl"></div>
   
</div>
<ul class="ul">
    <li>111</li>
    <li>222</li>
    <li>333</li>
    <li>444</li>
</ul>
<script>
    var ul=document.querySelector('.ul');
    //实际:获取元素地第一个子节点和最后一个子节点地方法
    console.log(ul.children[0]);
    console.log(ul.children[ul.children.length-1])

</script>

</body>

这个可以结合chlidren使用,chlidren返回的是一个数组,可通过元素下标地方式获取

兄弟节点 

元素.previousElementSibling //获取当前节点的前一个同级节点
元素.nextElementSibling //获取当前节点的后一个同级节点

有兼容性问题 IE9以上 

 

感言:

           量的积累

                                                                                            

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值