节点操作以及节点简介

一.节点获取方法

获取元素通常使用两种方法:

1.利用DOM提供的方法获取元素

  • document.getElementByid()
  • document.getElementsByTagName()
  • document.querySelector 等
  • 逻辑性不强,繁琐

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

  • 利用父子兄关系获取
  • 逻辑性强,但兼容性差

这两种方法都可以获取节点元素,但节点操作更简单 

二. 节点概述

网页中所有的内容都是节点(标签,属性,文本,注释等),在DOM中,节点使用node来表示。HTML DOM树中所有节点均可通过JavaScript进行访问,所有html元素节点均可被修改,也可以创建或删除。一般来说,节点至少拥有node Type(节点类型),nodeName(节点名称)和nodeValue(节点值)这三个基本属性。

  • 元素节点 node Type为1
  • 属性节点 node Type为2
  • 文本节点 node Type为3(文本节点包括文字,空格,换行等)

注: 在实际开发中,节点操作主要操作的是元素节点 。

 三.节点层级

利用DOM树可以把节点划分为不同的层级关系,常见的是父子兄层级关系

1.父节点 

node.parentNode

 代码如下:

<body>
  
    <div class="box">
    <span class="erweima">x</span>
    </div>
    <script>
        //1.父节点 parentNode
        let erweima=document.querySelector('.erweima');
        //let box=document.querySelector('.box');
        //得到的是离元素最近的父级节点,如果找不到父级节点,返回为空 null
        console.log(erweima.parentNode);
    </script>
</body>

2.子节点

1.parentNode.childNodes (标准)所有的子节点包含元素节点,文本节点等等

2.parentNode.children(非标准)

 parentNode.childNodes返回包含指定节点的子节点的集合,该集合为即时更新的集合

注:返回值里面包含了所有子节点,如果只想获得里面的元素节点,则需要专门处理。一般不提倡使用childNodes,使用nodetype来查看节点类型。

parentNode.children(非标准)

parentNode.children是一个只读属性,返回所有的子元素节点,只返回子元素节点,其余不返回。

虽然children是一个非标准,但得到了各个浏览器的支持,因此我们可以放心使用,也是实际开发常用的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值