html中childNodes节点属性

之前看html后对节点这个东西的盖帘一直很模糊,so在网上找了一本《DOM编程艺术》的PDF文档来看,编程试验了下

 

<body>
    <div id="box" οnclick="console.log(this)">
        this
        <h2 style="width: 200px" class="123" id="wrap">
            here
            <span class="1234">here</span> where
        </h2>
        that
    </div>
</body>
<script type="text/javascript">
    // var div = document.getElementById('box').childNodes[1].childNodes[0].nodeValue;
    var div = document.getElementById('box').childNodes;
    console.log(div);
</script>

在chrome中运行

显示有6个节点,我们依次来看看这6个节点是什么

  1. text:this  
  2. h2#wrap.123:here<span class="1234">here</span> where
  3. text:that

可以看出,childNodes是当前元素的第一代子节点,而且顺序是有以下几种节点组合

  1. text 
  2. text element text
  3. text element text element text

当.box中只纯在text时,或者为空时,也会有一个text节点,也就是第一种情况

当.box中存在一个element时,则在element前后都会存在一个text节点,不管text是否为空,也就是第二种情况

依次类推即可

转载于:https://www.cnblogs.com/duyingxuan/p/6418823.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值