DOM 的全称是 Document Object Model(文档对象模型)。DOM 是一种编程接口,用于在 Web 浏览器中动态地访问和操作 HTML 和 XML 文档的结构、内容和样式。通过 DOM,开发者可以使用 JavaScript 等脚本语言来修改网页的内容、结构和样式,实现动态交互效果。
在 JavaScript 中,DOM 节点(Node)是所有 DOM 对象的基础。不同的 DOM 继承自 Node
类,并扩展了特定的功能。以下是 DOM 中主要类及其继承关系的概述:
EventTarget
├─Node
├── Element
│ ├── HTMLElement
│ │ ├── HTMLDivElement
│ │ ├── HTMLParagraphElement
│ │ ├── HTMLInputElement
│ │ └── ...
│ └── SVGElement
├── Document
│ └── HTMLDocument
├── Attr
│ └── ... (属性相关的方法和属性)
└── CharacterData
├── Text
├── Comment
说明:
EventTarget
提供事件处理能力,多个 DOM 类(如 Node
、Element
、Document
等)都继承了 EventTarget
类。
Node
是所有节点类型的基础类。Element
继承自Node
,表示元素节点。HTMLElement
继承自Element
,表示具体的 HTML 元素。HTMLDivElement
、HTMLParagraphElement
、HTMLInputElement
等继承自HTMLElement
,分别表示<div>
、<p>
、<input>
等具体的 HTML 元素。Document
表示整个文档,HTMLDocument
是其在 HTML 文档中的具体实现。
-
Attr 类
- 继承自
Node
类。 - 表示元素的属性,虽然继承自
Node
,但在 DOM 树中并不作
- 继承自