什么是DOM中的元素和什么不是元素?

时间:2013-04-08 11:24:20

标签: java html dom jsoup

我正在编写一个代码,它对DOM执行一些操作。到目前为止我认为的是元素和节点,两者都是一样的。

但在编写代码时,我知道两者都有一些区别。我读了这么多博客,论坛答案。但我并没有真正感受到它们的含义。所以请深入解释这些术语并举例说明。所以我对它变得非常清楚。

提前致谢。寻找你的回应。

4 个答案:

答案 0 :(得分:2)

您是否已完成此操作 - What's the difference between an element and a node in XML?

节点是DOM中的基本数据类型 - 节点可以包含元素,文档等。

  

根据DOM,XML文档中的所有内容都是节点。

     

DOM说:

     

整个文档是文档节点。   每个XML元素都是一个元素节点。   XML元素中的文本是文本节点。   每个属性都是一个属性节点。   评论是评论节点。

来自w3.org

<强> Node

  

Node接口是整个文档对象模型的主要数据类型。它表示文档树中的单个节点。虽然实现Node接口的所有对象都公开了处理子节点的方法,但并非实现Node接口的所有对象都可能有子节点。例如,Text节点可能没有子节点,并且向这些节点添加子节点会导致引发DOMException。

<强> Element

  

Element接口表示HTML或XML文档中的元素。元素可能具有与之关联的属性;由于Element接口继承自Node,因此可以使用通用Node接口属性属性来检索元素的所有属性集。 Element接口上有方法可以按名称检索Attr对象,也可以按名称检索属性值。在XML中,属性值可能包含实体引用,应检索Attr对象以检查表示属性值的可能相当复杂的子树。另一方面,在HTML中,所有属性都具有简单的字符串值,可以安全地使用直接访问属性值的方法。

阅读此内容 - w3schools node types

答案 1 :(得分:1)

元素是一种节点,其他包括注释和文本。

HTML:

<p> Example <!-- foo --> Example <span></span> </p>

...将创建一个HTML P元素节点,其中包含文本节点,注释节点,另一个文本和HTML SPAN元素节点。

答案 2 :(得分:0)

在Dom an Element中的

扩展了节点的功能。 Dom中的所有东西都是节点。

interface Element : Node

节点:

http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-1950641247

元素:

http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-745549614

答案 3 :(得分:0)

元素是Node的一个特例。