dom属性指什么意思 DOM和SUB是什么属性

DOM和SUB是什么属性,dom属性指什么意思 。发迹号带你了解更多相关信息 。DOM还使用术语元素(Element)它与节点非常相似 。那么,DOM节点和元素之间有什么区别呢?1.DOM节点理解节点和元素之间区别的关键是理解节点是什么 。更高的角度来看
DOM和SUB是什么属性,dom属性指什么意思 。发迹号带你了解更多相关信息 。
DOM 还使用术语元素(Element)它与节点非常相似 。那么,DOM节点和元素之间有什么区别呢?

dom属性指什么意思 DOM和SUB是什么属性


1. DOM节点
理解节点和元素之间区别的关键是理解节点是什么 。
【dom属性指什么意思 DOM和SUB是什么属性】更高的角度来看,DOM文档由节点层次结构组成 。每个节点可以具有父级和/或子级 。
看看下面的HTML文档:
My Page
My PageThank you for visiting my web page!
该文档包含以下节点层次结构:
dom属性指什么意思 DOM和SUB是什么属性


是文档树中的一个节点 。它有2个子节点:和 。
子有3个子节点的节点:注释节点,标题
,段落
。节点的父节点是节点 。
HTML文档中的标记代表一个节点,有趣的是普通文本也是一个节点 。段落节点
有1个子节点:文本节点“Thank you for visiting my web page!” 。
1.2节点类型
我们要如何区分这些不同类型的节点?答案在于DOM Node接口,尤其是Node.nodeType属性 。
Node.nodeType可以具有代表节点类型的以下值之一:
Node.ELEMENT_NODE Node.ATTRIBUTE_NODE Node.TEXT_NODE Node.CDATA_SECTION_NODE Node.PROCESSING_INSTRUCTION_NODE Node.DOCUMENT_NODE Node.DOCUMENT_TYPE_NODE Node.DOCUMENT_FRAGMENT_NODE Node.NOTATION_NODE
常量有意义地指示节点类型:例如Node.ELEMENT_NODE代表元素节点,Node.TEXT_NODE代表文本节点,Node.DOCUMENT_NODE文档节点,依此类推 。
例如,让我们选择段落节点,然后查看其nodeType属性:
const paragraph = document.querySelector(p);
paragraph.nodeType === Node.ELEMENT_NODE; // => true
代表整个节点文档树的节点类型为Node.DOCUMENT_NODE:
document.nodeType === Node.DOCUMENT_NODE; // => true
2. DOM元素
掌握了DOM节点的知识之后,现在该区分DOM节点和元素了 。
如果你了解节点术语,那么答案是显而易见的:元素是特定类型的节点 element (Node.ELEMENT_NODE),以及文档、注释、文本等类型 。
简而言之,元素是使用HTML文档中的标记编写的节点 。,,,,

都是元素,因为它们由标签表示 。
文档类型,注释,文本节点不是元素,因为它们没有使用标签编写:
Node是节点的构造函数,HTMLElement 是 JS DOM 中元素的构造函数 。段落既是节点又是元素,它同时是Node和HTMLElement的实例
const paragraph = document.querySelector(p);
paragraph instanceof Node;// => true
paragraph instanceof HTMLElement; // => true
简单地说,元素是节点的子类型,就像猫是动物的子类型一样 。
3. DOM属性:节点和元素
除了区分节点和元素之外,还需要区分只包含节点或只包含元素的DOM属性 。
节点类型的以下属性评估为一个节点或节点集合(NodeList):
node.parentNode; // Node or null
node.firstChild; // Node or null
// Node or null
node.childNodes; // NodeList
但是,以下属性是元素或元素集合(HTMLCollection):
node.parentElement; // HTMLElement or null
node.children;// HTMLCollection
由于node.childNodes和node.children都返回子级列表,因此为什么要同时具有这两个属性?好问题!
考虑以下包含某些文本的段落元素:

推荐阅读