Movatterモバイル変換


[0]ホーム

URL:


  1. 面向开发者的 Web 技术
  2. Web API
  3. Document

此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in EnglishAlways switch to English

Document

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.

* Some parts of this feature may have varying levels of support.

Document 接口表示任何在浏览器中载入的 Web 页面,并作为 Web 页面内容的入口,也就是DOM 树

DOM 树包含了像<body><table> 这样的元素,以及大量其他元素。它向文档本身提供了全局操作功能,能解决如何获取页面的 URL,如何在文档中创建一个新的元素这样的问题。

EventTarget Node Document

Document 接口描述了任何类型的文档的通用属性与方法。根据不同的文档类型(例如HTMLXML、SVG……),还有更多可用的 API:使用"text/html" 作为内容类型的 HTML 文档,还实现了HTMLDocument 接口,而 XML 和 SVG 文档则实现了XMLDocument 接口。

构造函数

Document()

创建一个新的Document 对象。

实例属性

此接口还继承了NodeEventTarget 接口。

Document.activeElement只读

返回目前处于聚焦状态的Element

Document.activeViewTransition只读

返回一个表示当前在文档上活动的视图转换ViewTransition 实例,如果没有活动的视图转换则返回null

Document.adoptedStyleSheets

添加用于构造文档样式表的数组。这些样式表也可与同一文档的影子 DOM 子树共享。

Document.body

返回当前文档的<body><frameset> 节点。

Document.characterSet只读

返回文档正在使用的字符集。

Document.childElementCount只读

返回当前文档的子元素数量。

Document.children只读

返回当前文档的子元素。

Document.compatMode只读

指示文档是否以怪异模式(quirks)或严格模式(strict)渲染。

Document.contentType只读

根据当前文档的 MIME 标头,返回其内容类型(Content-Type)。

Document.currentScript只读

返回目前正在处理且不是 JavaScript 模块<script> 元素。

Document.doctype只读

返回当前文档的文档类型定义(Document Type Definition,DTD)。

Document.documentElement只读

返回当前文档的一个直接子节点元素。对于 HTML 文档,一般为代表该文档的<html> 元素的HTMLHtmlElement 对象。

Document.documentURI只读

返回文档的位置(字符串形式)。

Document.embeds只读

返回包含文档中所有嵌入式元素<embed>HTMLCollection

Document.featurePolicy实验性只读

返回表示应用于文档的特性策略的FeaturePolicy 接口。

Document.firstElementChild只读

返回当前文档的第一个子元素。

Document.fonts

返回当前文档的FontFaceSet 接口。

Document.forms只读

返回包含文档中所有表单元素<form>HTMLCollection

Document.fragmentDirective只读

返回当前文档的FragmentDirective

Document.fullscreenElement只读

返回文档中正处于全屏模式的元素。

Document.head只读

返回当前文档的<head> 元素。

Document.hidden只读

返回一个表明当前页面是否隐藏的布尔值。

Document.images只读

返回包含文档中所有图片的HTMLCollection

Document.implementation只读

返回与当前文档相关联的 DOM 实现。

Document.lastElementChild只读

返回当前文档的最后一个子元素。

Document.links只读

返回包含文档中所有超链接的HTMLCollection

Document.pictureInPictureElement只读

返回文档中正处于画中画模式的元素

Document.pictureInPictureEnabled只读

若画中画特性可用,则返回true

Document.plugins只读

返回一个包含可用插件的HTMLCollection

Document.pointerLockElement只读

当指针被锁定时,返回鼠标事件的目标的元素集合。若锁定正处于等待状态、指针已被解锁,或是目标正处于另一个文档中,则返回null

Document.prerendering只读实验性

返回一个表示文档当前是否处于预渲染过程(通过推测规则 API 启动)中的布尔值。

Document.scripts只读

返回包含文档中所有的<script> 元素的HTMLCollection

Document.scrollingElement只读

返回对用于滚动文档的元素的引用。

Document.styleSheets只读

返回一个包含显式链接或嵌入到文档中的CSSStyleSheet 对象的StyleSheetList

Document.timeline只读

返回一个在页面加载时自动创建的特殊DocumentTimeline 实例。

Document.visibilityState只读

返回一个表明当前文档的可见性的字符串(string)。可能的取值有visiblehiddenprerenderunloaded

HTMLDocument 的扩展

HTML 文档的Document 接口继承了HTMLDocument 接口,或为文档进行了扩展:

Document.cookie

返回一个使用分号分隔的 cookie 列表,或设置单个 cookie。

Document.defaultView只读

返回一个对 window 对象的引用。

Document.designMode

获取或设置编辑整个文档的能力。

Document.dir

获取或设置文档的文字方向(rtl 或 ltr)。

Document.fullscreenEnabled只读

表示全屏模式是否可用。

Document.lastModified只读

返回文档最后修改的时间。

Document.location只读

返回当前文档的 URI。

Document.readyState只读

返回当前文档的加载状态。

Document.referrer只读

返回链接到此页的页面的 URI。

Document.title

获取或设置当前文档的标题。

Document.URL只读

以字符串形式返回文档的位置。

具名属性

文档中的某些元素也以属性的形式暴露:

  • 对于每个<embed><form><iframe><img><object> 元素,其name(如果非空)都会被暴露出来。例如,如果文档包含<iframe name="my_form">,那么document["my_form"](及其等价的document.my_form)会返回对该元素的引用。
  • 对于每个<form> 元素,其id(如果非空)也会被暴露出来。
  • 对于每个具有非空name<img> 元素,其id(如果非空)也会被暴露出来。

如果某个属性对应单个元素,则直接返回该元素。如果该单个元素是一个 iframe,则返回其contentWindow 代替。如果该属性对应多个元素,则返回一个包含所有这些元素的HTMLCollection

已弃用的属性

Document.alinkColor已弃用

返回或设置文档正文部分激活的链接的颜色。

Document.all已弃用

返回一个以文档节点为根节点的HTMLAllCollection 集合,以访问文档中所有的元素。这是遗留的非标准属性,不应使用。

Document.anchors已弃用只读

返回文档中所有锚点元素的列表。

Document.applets已弃用只读

返回一个空的HTMLCollection。过去用于返回文档中的小应用程序(applet)列表的遗留属性。

Document.bgColor已弃用

获取或设置当前文档的背景颜色。

Document.charset已弃用只读

Document.characterSet 的别名,请使用原始属性替换。

Document.domain已弃用

获取或设置当前文档的域。

Document.fgColor已弃用

获取或设置当前文档的前景色或文本颜色。

Document.fullscreen已弃用

若文档处于全屏模式,则返回true

Document.inputEncoding只读已弃用

Document.characterSet 的别名,请使用原始属性替换。

Document.lastStyleSheetSet已弃用只读非标准

返回最后启用的样式表的名字。在设置selectedStyleSheetSet 前,其值都为null

Document.linkColor已弃用

获取或设置文档中超链接的颜色。

Document.preferredStyleSheetSet已弃用只读非标准

返回文档作者首选的样式表。

Document.rootElement已弃用

类似于Document.documentElement,但其仅用于<svg> 根元素。请使用后者代替。

Document.selectedStyleSheetSet已弃用只读

返回当前正使用的样式表的集合。

Document.styleSheetSets已弃用只读非标准

返回文档上可用样式表的集合。

Document.vlinkColor已弃用

获取或设置被访问的超链接的颜色。

Document.xmlEncoding已弃用

返回由 XML 声明的编码类型。

Document.xmlStandalone已弃用

若 XML 声明指定的文档是独立的(例如:文档类型定义的外部内容会影响文档的内容),则返回true,否则返回false

Document.xmlVersion已弃用

返回 XML 声明中指定的版本号,若声明不存在则为"1.0"

实例方法

该接口还继承了NodeEventTarget 接口。

Document.adoptNode()

从外部文档中转移节点。

Document.append()

在文档的最后一个子节点后插入一个Node 对象或字符串的集合。

Document.ariaNotify()实验性非标准

指定屏幕阅读器应朗读给定的文本字符串。

Document.browsingTopics()非标准已弃用

返回一个会兑现为对象数组(表示用户最近三个周期中的热门主题)的 promise。默认情况下,该方法还会使浏览器记录调用者观察到的当前页面访问信息,以便稍后在主题计算中使用页面的主机名。有关更多详细信息,请参阅主题 API

Document.captureEvents()已弃用

参见Window.captureEvents

Document.caretPositionFromPoint()

返回一个包含 DOM 节点(包含插入符号以及该符号在节点中的字符偏移量)的CaretPosition 对象。

Document.caretRangeFromPoint()非标准

获取一个Range 对象,其为指定坐标下的文档片段。

Document.createAttribute()

创建一个新的Attr 对象并返回。

Document.createAttributeNS()

在给定命名空间创建一个新的属性节点并返回。

Document.createCDATASection()

创建一个新的数据(CDATA)节点并返回。

Document.createComment()

创建一个新的注释节点并返回。

Document.createDocumentFragment()

创建一个新的文档片段。

Document.createElement()

用给定标签名创建一个新的元素。

Document.createElementNS()

用给定标签名和命名空间创建一个新的元素。

Document.createEvent()已弃用

创建一个事件对象。

Document.createNodeIterator()

创建一个NodeIterator 对象。

Document.createProcessingInstruction()

创建一个新的ProcessingInstruction 对象。

Document.createRange()

创建一个Range 对象。

Document.createTextNode()

创建一个文本节点。

Document.createTouch()已弃用非标准

创建一个Touch 对象。

Document.createTouchList()已弃用非标准

创建一个TouchList 对象。

Document.createTreeWalker()

创建一个TreeWalker 对象。

Document.elementFromPoint()

返回指定坐标最顶层的元素。

Document.elementsFromPoint()

返回包含指定坐标下所有元素的数组。

Document.enableStyleSheetsForSet()已弃用非标准

启用指定的样式表集合。

Document.exitFullscreen()

阻止文档的全屏元素以全屏模式显示。

Document.exitPictureInPicture()

从浮动的画中画窗口中移除视频,并返回到它的原始容器。

Document.exitPointerLock()

释放指针锁。

Document.getAnimations()

返回包含所有目前有效的Animation 对象(其目标元素为document 的后代)的数组。

Document.getBoxQuads()实验性

返回一个DOMQuad 对象(表示节点中的 CSS 片段)的列表。

Document.getElementById()

返回标识元素的引用对象。

Document.getElementsByClassName()

返回具有给定类名的元素列表。

Document.getElementsByTagName()

返回具有给定标签名的元素列表。

Document.getElementsByTagNameNS()

返回具有给定标签名和命名空间的元素列表。

Document.getSelection()

返回一个Selection 对象,表示用户选择的文本范围或是插入符号当前的位置。

Document.hasPrivateToken()实验性

返回一个会兑现为用于表示浏览器是否有来自特定发行者的私有状态令牌的布尔值的Promise

Document.hasRedemptionRecord()实验性

返回一个会兑现为用于表示浏览器是否有来自特定发行者的兑换记录的布尔值的 promise。

Document.hasStorageAccess()

返回一个Promise,其会兑现一个用于表示文档是否有未分区 cookie 访问权限的布尔值。

Document.hasUnpartitionedCookieAccess()

Document.hasStorageAccess() 的新名称。

Document.importNode()

返回外部文档的节点的拷贝。

Document.moveBefore()

将给定Node 移动到Document DOM 节点内(作为直接子节点)的给定参考节点之前,而不通过先移除然后再插入的方式。

Document.mozSetImageElement()非标准

允许你更改指定元素 ID 的背景图像所用的元素。

Document.prepend()

在文档的第一个子节点前插入一个Node 对象或字符串的集合。

Document.querySelector()

返回文档中与指定的选择器匹配的第一个元素节点。

Document.querySelectorAll()

返回包含文档中与指定的选择器匹配的所有元素节点的列表。

Document.releaseCapture()非标准

若鼠标在当前文档的某一个元素之上,则释放当前的鼠标捕获。

Document.releaseEvents()已弃用

参见Window.releaseEvents()

Document.replaceChildren()

用一个指定的新的子节点集合替换替换文档中现有的子节点。

Document.requestStorageAccess()

允许在第三方上下文中加载的文档(即嵌入在<iframe> 的)请求访问未分区 cookie,以便在默认情况下,用户代理可以通过阻止在第三方上下文中加载的网站访问未分区 cookie 来提高隐私性。

Document.requestStorageAccessFor()实验性

允许顶级站点代表来自同一关联网站集合中的其他站点的嵌入内容请求第三方 cookie 访问。

Document.startViewTransition()

启动新的视图转换并返回一个表示它的ViewTransition 对象。

Document 接口使用XPathEvaluator 接口扩展:

Document.createExpression()

编译一个用于(重复)执行的XPathExpression

Document.createNSResolver()

原样返回输入的节点。

Document.evaluate()

执行一个 XPath 表达式。

HTML 文档的扩展

HTML 文档的Document 接口继承了HTMLDocument 接口,或为文档进行了扩展:

Document.clear()已弃用

这个方法没有任何作用。

Document.close()

关闭用于写入的文档流。

Document.execCommand()已弃用

在可编辑文档中执行格式化命令。

Document.getElementsByName()

返回一个具有给定名称的元素的列表。

Document.hasFocus()

若焦点目前位于给定的文档内,则返回true

Document.open()

打开用于写入的文档流。

Document.queryCommandEnabled()已弃用非标准

若可在当前范围内执行格式化命令,则返回true

Document.queryCommandIndeterm()已弃用

若格式化命令在当前范围内处于不确定的状态,则返回true

Document.queryCommandState()已弃用非标准

若格式化命令已在当前范围内执行,则返回true

Document.queryCommandSupported()已弃用非标准

若当前范围支持格式化命令,则返回true

Document.queryCommandValue()已弃用

返回格式化命令当前的范围值。

Document.write()

向文档写入文本。

Document.writeln()

向文档写入一行文本。

静态方法

此接口还继承了NodeEventTarget 接口。

Document.parseHTML()实验性

以 XSS 安全的方式,通过对 HTML 字符串进行净化处理,创建一个新的Document 对象。

Document.parseHTMLUnsafe()

通过 HTML 字符串创建一个新的Document 对象,而不执行任何清理操作。该字符串可能包含声明式影子根。

事件

可以使用addEventListener() 或为该接口的事件处理器属性oneventname 赋值的方式来监听这些事件。除了下面列出的事件之外,许多事件还可以在文档树中包含的节点冒泡。

afterscriptexecute非标准已弃用

在静态的<script> 元素执行完其中的脚本时触发。

beforescriptexecute非标准已弃用

在静态的<script> 开始执行脚本时触发。

prerenderingchange实验性

在预渲染文档被激活(即用户查看该页面)时触发。

securitypolicyviolation

在违反内容安全策略时触发。

visibilitychange

在标签页内容变为可见或隐藏时触发。

全屏事件

fullscreenchange

Document 进入或退出全屏模式时触发。

fullscreenerror

在尝试进入或退出全屏模式而发生错误时触发。

加载和卸载事件

DOMContentLoaded

在文档完全加载并解析后触发,无需等待样式表、图像和子框架完成加载。

readystatechange

在文档的readyState 属性发生变化时触发。

指针锁定事件

pointerlockchange

在指针被锁定或解锁时触发。

pointerlockerror

在尝试锁定指针失败时触发。

滚动事件

scroll

在文档视图或元素被滚动时触发。

scrollend

在文档视图或元素完成滚动时触发。

scrollsnapchange实验性

在滚动操作结束而选择了新的滚动捕捉目标时,在滚动容器上触发。

scrollsnapchanging实验性

在浏览器确定有新的滚动捕捉目标待定(即若当前滚动手势结束,则会被选中)时,在滚动容器上触发。

选择事件

selectionchange

在文档中的选中的文本发生改变时触发。

冒泡事件

并非所有冒泡事件都能到达Document 对象。只有以下事件可以,并且可以在Document 对象上监听:

规范

Specification
DOM
# interface-document
HTML
# the-document-object
CSSOM View Module
# extensions-to-the-document-interface
Pointer Lock 2.0
# extensions-to-the-document-interface
Selection API
# extensions-to-document-interface

浏览器兼容性

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2026 Movatter.jp