文档对象模型(DOM)
文档对象模型(DOM)通过将文档的结构(例如表示网页的 HTML)以对象的形式存储在内存中,将网页与脚本或编程语言连接起来。尽管将 HTML、SVG 或 XML 文档建模为对象并不是 JavaScript 核心语言的一部分,但它通常与 JavaScript 相关。
DOM 使用逻辑树的形式来表示文档。树的每个分支末端都是一个节点,每个节点都包含对象。DOM 方法允许以编程方式来访问树。借助这些方法,你可以改变文档的结构、样式或内容。
节点还可以附加事件处理器。一旦事件被触发,相应的事件处理器就会被执行。
进一步了解 DOM 是什么以及它如何表示文档,请参阅我们的文章 DOM 概述。
DOM 接口
AbortController
AbortSignal
AbstractRange
Attr
CDATASection
CharacterData
Comment
CustomEvent
Document
DocumentFragment
DocumentType
DOMError
已弃用DOMException
DOMImplementation
DOMParser
DOMPoint
DOMPointReadOnly
DOMRect
DOMTokenList
Element
Event
EventTarget
HTMLCollection
MutationObserver
MutationRecord
NamedNodeMap
Node
NodeIterator
NodeList
ProcessingInstruction
Range
StaticRange
Text
TextDecoder
TextEncoder
TimeRanges
TreeWalker
XMLDocument
过时的 DOM 接口
文档对象模型已被高度简化。为了实现这一目标,已在 DOM 第 3 版或更早的各种规范中移除了以下接口。它们不再对 Web 开发者可用。
DOMConfiguration
DOMErrorHandler
DOMImplementationList
DOMImplementationRegistry
DOMImplementationSource
DOMLocator
DOMObject
DOMSettableTokenList
DOMUserData
ElementTraversal
Entity
EntityReference
NameList
Notation
TypeInfo
UserDataHandler
HTML DOM
包含 HTML 的文档通过 Document
接口进行描述,HTML 规范扩展了这个接口,包含了各种 HTML 特有的特性。尤其是 Element
接口被拓展为 HTMLElement
以及很多不同的子类,每个子类代表一个(或一系列密切相关的)元素。
HTML DOM API 提供了对各种浏览器特性的访问,如标签和窗口、CSS 样式和样式表、浏览器历史记录等。这些接口将在 HTML DOM API 文档中进一步讨论。
SVG DOM
同样,包含 SVG 的文档也通过 Document
接口来描述,接口由 SVG 规范扩展,包含了各种 SVG 特有的特性。尤其是 Element
接口被拓展为 SVGElement
以及很多不同的子类,每个子类代表一个(或一系列密切相关的)元素。这些接口将在 SVG API 文档中进一步讨论。
规范
Specification |
---|
DOM Standard |