必威体育Betway必威体育官网
当前位置:首页 > IT技术

parentNode,parentElement,childNodes,children最经典讲解

时间:2019-07-18 22:10:00来源:IT技术作者:seo实验室小编阅读:59次「手机版」
 

parentelement

Dom树

首先了解parentNode,parentelement,childNodes,children四大属性之前,必须对Dom树有一定的了解,在Dom文档结构中,HTML页面每一部分都是由节点组成的,节点的类型一共有3种,元素节点,文本节点,属性节点,从图中可以看出属性节点属于元素节点的分支,一般不常考虑,

下来详细介绍,childNodes,childern,

childNodes指的是返回当前元素子节点的所有类型节点,其中连空格和换行符都会默认文本节点,

代码如下

这里写图片描述

打印结果:

这里写图片描述

其中空格和文本均打印为文本节点,这里有一个重点要说明一下!!!

之前说childNodes返回的是所有节点的数组,但是如果我给你li元素添加属性会发现元素的长度总长度并没有改变,也就是说在childNodes只会返回文本和元素的节点,并不能返回属性节点!!!

childern指的是返回当前元素的所有元素节点,代码如下

这里写图片描述

执行代码如下:

这里写图片描述

children很直观的反应了返回元素节点的属性。

接下来讲解:parentNode,parentElement,

parentNode:顾名思义-父节点

parentElement:顾名思义-父元素

两者在通常情况下都是一样的,因为包含元素的节点只有可能是元素节点,这里可能会有一个误区,有些人可能会想文本节点是否可以包含元素节点,来作为父节点,这里是不行的,文本节点只是文本本身,自身算一个节点,文本节点的父节点直接是元素节点。

那下面我们就说一下,parentNode,parentElement,的特例,

这里写图片描述

这里运行结果是一致的,他们的祖宗元素都是HTML,但是我们试着想一下,再往上一层,就是根部document了,并不是元素,我们可以一起来看一下下面的代码

这里写图片描述

执行代码如下:

这里写图片描述

这里的唯一区别就出来了,因为parentElement找的是元素,因此当找到根部document时候就是出现值为null的报错,而且parentNode找的是节点,当然就可以显示出来了!

以上是博主对Dom这四个原生的属性通过阅读网上的博客文章总结出来的,希望可以帮助到正在学习javascript道路上的伙伴!!!

相关阅读

offsetParent和parentElement的区别

一直以为offsetParent和parentElement是一回事,最近在做web控件才发现原来的理解是大错特错。parentElement 在msdn的解释是Retrie

parentNode与offsetParent区别

offsetParent  指与位置有关的上级元素  只读parentNode  指与位置无关的上级元素   只读 offsetParent直接的将是影响元素位

深度剖析offsetParent、offsetTop、offsetLeft和Paren

深度剖析offsetParent、offsetTop、offsetLeft和ParentNode的区别 ParentNode:是直接结构上的父级,并不是显示父级offsetParent:有

event.srcElement.parentElement的用法

用event.srcElement.parentElement可以获取当前操作对象的父级对象看下代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Trans

JavaScript之childNodes 和 children 区别

1、先让我们来看看childNodes的用法,以及是如何计算节点数量: 为什么输出是7而不是3呢?原来Internet Explorer 会忽略节点之间生

分享到:

栏目导航

推荐阅读

热门阅读