DOM中如何获取一个元素的子元素?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DOM中如何获取一个元素的子元素?相关的知识,希望对你有一定的参考价值。

纯JS中DOM中如何获取一个元素含有特定class的子元素?

参考技术A

假设元素#a

那么可以得到:

let p = document.getElementById('a');

let arr = p.childNodes;

本回答被提问者采纳
参考技术B 这个用jquery方便,用纯js难搞。原因有3
1,要是在css里,js直接获取不到。需要js访问css文件进行。
2,要是写在style="abc:aab"这样,马马虎虎可以,不过改的慢
3,要是多个class那更麻烦
用jquery,他也是纯js,不过一个引用而已,改什么方便些

js中,dom元素和节点的区别

参考技术A 在 HTML DOM (文档对象模型)中,每个部分都是节点:

文档本身是文档节点

所有 HTML 元素是元素节点

所有 HTML 属性是属性节点

HTML 元素内的文本是文本节点 (包括回车符也是属于文本节点)

注释是注释节点

Element 对象可以拥有类型为元素节点、文本节点、注释节点的子节点。

NodeList 对象表示节点列表,比如 HTML 元素的子节点集合。

元素也可以拥有属性。属性是属性节点。

<bookstore>

          <book category="children">

                    <title lang="en">Harry Potter</title>

                    <author>J K. Rowling</author>

                    <year>2005</year>

                    <price>29.99</price>

          </book>

          <book category="cooking">

                    <title lang="en">Everyday Italian</title>

                    <author>Giada De Laurentiis</author>

                    <year>2005</year>

                    <price>30.00</price>

            </book>

</bookstore>

元素和节点的区别:元素是一个小范围的定义,必须是含有完整信息的节点才是一个元素。

比如:<author>......./<author>是一个元素。而<author>是一个子节点或者是元素节点,Vaidyanathan Nagarajan是一个文本节点。

换句话说就是 元素一定是节点,但节点不一定是元素。

node(节点)是相对Tree这种数据结构而言的。Tree就是由Node组成。

element则是xml里面的概念,<xxx>就是元素,是xml中数据的组成部分之一。

DOM将文档中的所有都看作节点node>element

一个元素是由开始标签、结束标签以及标签之间的数据构成的

总结:元素是元素节点,是节点中的一种,但元素节点中可以包含很多的节点。

以上是关于DOM中如何获取一个元素的子元素?的主要内容,如果未能解决你的问题,请参考以下文章

jquery中如何获取当前DOM对象里的子元素?

javascript怎么操作iframe页面里面的dom元素?

如何获取Appium中元素的子元素列表?

ReactJs中获取dom元素

JavaScript中DOM,以及如何获取元素

如何获取与 DOM 元素关联的事件?