Window
window
对象表示一个包含 DOM 文档的窗口,其 document
属性指向窗口中载入的 DOM 文档 。
使用 document.defaultView
属性可以获取指定文档所在窗口。
代表了脚本正在运行的窗口的 window
全局变量,被暴露给 Javascript 代码。
Window
接口是各种函数、命名空间、对象和构造函数的家,它们不一定与用户界面窗口的概念直接相关。然而,Window
接口是一个可以包含这些需要全局可用的项目的合适的地方。其中很多内容都在 JavaScript 参考和 DOM 参考中有所记载。
在标签式浏览器中,每个标签都由自己的 Window
对象表示;在特定标签中运行的 JavaScript 代码所看到的全局 window
总是代表代码所运行的标签。也就是说,即使在标签浏览器中,一些属性和方法仍然适用于包含标签的整个窗口,如 resizeTo()
和 innerHeight
。一般来说,任何不能合理地与标签有关的东西都与窗口有关。
实例属性
本接口从 EventTarget
接口继承属性。
注意,对象类型的属性(例如:覆盖内建元素的原型)被列于下面单独的小节之中。
Window.caches
只读-
返回与当前环境相关的
CacheStorage
对象。这个对象可以实现一些功能,如存储供离线使用的资源,以及对请求生成自定义响应。 Window.clientInformation
只读-
Window.navigator
对象的别名。 Window.closed
只读-
此属性表示当前窗口是否关闭。
Window.console
只读-
返回对 console 对象的引用,该对象提供对浏览器调试控制台的访问。
Window.credentialless
只读 实验性 非标准-
返回一个布尔值,表示当前文档是否在无凭据(credentialless)的
<iframe>
中加载。参见 IFrame credentialless 以了解更多细节。 Window.crypto
只读-
返回与全局对象关联的
Crypto
对象。 Window.customElements
只读-
返回对
CustomElementRegistry
对象的引用,该对象可用于注册新的自定义元素并获取之前注册的自定义元素的信息。 Window.devicePixelRatio
只读-
返回当前显示器中物理像素和设备独立像素之间的比率。
Window.document
只读-
返回对 window 所包含的文档的引用。
Window.frameElement
只读-
返回窗口被嵌入的元素,如果窗口没有被嵌入,则返回空。
Window.frames
只读-
返回当前窗口中的子框架(subframe)形成的数组。
Window.fullScreen
非标准-
此属性指示窗口是否以全屏显示。
Window.history
只读-
返回对 history 对象的引用。
Window.indexedDB
只读-
为应用程序提供异步访问索引数据库的能力;返回一个
IDBFactory
对象。 Window.innerHeight
只读-
获取浏览器窗口的内容区域的高度,包括(已渲染的)水平滚动条。
Window.innerWidth
只读-
获取浏览器窗口的内容区域的宽度,包括(已渲染的)竖直滚动条。
Window.isSecureContext
只读-
返回一个布尔值,表示当前上下文安全(
true
)或不安全(false
)。 Window.launchQueue
只读 实验性-
当一个渐进式 web 应用(PWA)以
focus-existing
、navigate-new
或navigate-existing
的launch_handler
client_mode
值启动时,launchQueue
提供对LaunchQueue
类的访问,这允许为 PWA 实现自定义的启动导航处理。 Window.length
只读-
返回窗口中的框架(frame)数。参见
window.frames
。 Window.location
-
获取/设置 window 对象的位置,或当前的 URL。
Window.locationbar
只读-
返回 locationbar 对象。
Window.localStorage
只读-
返回一个对用于存储数据的本地存储对象的引用,该对象只能由创建它的源访问。
-
返回 menubar 对象。
Window.mozInnerScreenX
只读 非标准-
返回窗口视口左上角的水平(X)坐标,以屏幕坐标表示。这个值是以 CSS 像素为单位报告的。请参阅
nsIDOMWindowUtils
中的mozScreenPixelsPerCSSPixel
,以获得转换系数,以便在需要时适应屏幕像素。 Window.mozInnerScreenY
只读 非标准-
返回窗口视口左上角的垂直(Y)坐标,以屏幕坐标表示。这个值是以 CSS 像素为单位报告的。请参阅
mozScreenPixelsPerCSSPixel
,如果需要的话,可以用一个转换系数来适应屏幕像素。 Window.name
-
获取/设置 window 对象的名称。
-
返回当前
window
的相关Navigation
对象。是Navigation API
的入口点。 -
返回对 navigator 对象的引用。
Window.opener
-
返回对打开当前窗口的 window 的引用。
Window.origin
只读-
返回全局对象的源,序列化为一个字符串。
Window.outerHeight
只读-
获取浏览器窗口外侧的高度。
Window.outerWidth
只读-
获取浏览器窗口外侧的宽度。
Window.pageXOffset
只读-
window.scrollX
的别名。 Window.pageYOffset
只读-
window.scrollY
的别名。 Window.parent
只读-
返回对当前窗口或子框架的被继承对象的引用。
Window.performance
只读-
返回一个
Performance
对象,其中包括timing
和navigation
属性,每个属性都是提供性能相关数据的对象。有关其他信息和例子,请参见使用导航计时。 Window.personalbar
只读-
返回 personalbar 对象。
Window.scheduler
只读-
返回与当前上下文相关的
Scheduler
对象。这是使用优先级任务调度 API 的入口。 Window.screen
只读-
返回与该窗口相关的 screen 对象的引用。
Window.screenX
和Window.screenLeft
只读-
这两个属性都返回从用户浏览器视口的左边界到屏幕左侧的水平距离。
Window.screenY
和Window.screenTop
只读-
这两个属性都会返回从用户浏览器视口的上边界到屏幕上侧的垂直距离。
Window.scrollbars
只读-
返回 scrollbars 对象。
Window.scrollMaxX
非标准 只读-
窗口在水平方向上可以滚动的最大偏移量,即文档宽度减去视口宽度。
Window.scrollMaxY
非标准 只读-
窗口在竖直方向上可以滚动的最大偏移量,即文档高度减去视口高度。
Window.scrollX
只读-
返回文档已经被水平滚动的像素数。
Window.scrollY
只读-
返回文档已经被竖直滚动的像素数。
Window.self
只读-
返回对 window 对象本身的引用。
Window.sessionStorage
-
返回对用于存储数据的会话存储对象的引用,这些数据只能由创建它的源访问。
Window.speechSynthesis
只读-
返回
SpeechSynthesis
对象,这是使用 Web Speech API 语音合成功能的入门点。 Window.statusbar
只读-
返回 statusbar 对象。
Window.toolbar
只读-
返回 toolbar 对象。
Window.top
只读-
返回对窗口层次结构中最顶层窗口的引用。这个属性是只读的。
Window.visualViewport
只读-
返回
VisualViewport
对象,代表一个给定窗口的视觉视口。 Window.window
只读-
返回对当前 window 的引用。
window[0]
、window[1]
等-
以逐帧形式返回对
window
对象的引用,要了解更多细节,参见Window.frames
。
已弃用的属性
Window.event
已弃用 只读-
返回当前事件,即当前由 JavaScript 代码的上下文处理的事件,如果当前没有事件被处理,则返回
undefined
。应尽可能使用直接传递给事件处理程序的Event
对象来代替。 Window.external
已弃用 只读-
返回一个带有向浏览器添加外部搜索提供者的功能的对象。
Window.orientation
已弃用 只读-
返回视口相对于设备自然方向的度数(以 90 度为增量)。
-
返回对侧边栏的 window 对象的一个引用。
Window.status
已弃用-
获取/设置浏览器底部状态栏中的文本。
实例方法
本接口从 EventTarget
接口继承方法。
Window.addEventListener()
-
为 window 上的特定事件类型注册一个事件处理器。
Window.atob()
-
解码一个使用 base-64 编码的数据字符串。
Window.alert()
-
显示一个警告对话框。
Window.blur()
-
将焦点从窗口上移开。
Window.btoa()
-
从一串二进制数据中创建一个 base-64 编码的 ASCII 字符串。
Window.cancelAnimationFrame()
-
取消之前使用
Window.requestAnimationFrame
安排的回调。 Window.cancelIdleCallback()
-
取消之前使用
Window.requestIdleCallback
安排的回调。 Window.clearImmediate()
-
取消使用
setImmediate()
设置的重复执行任务。 Window.clearInterval()
-
取消使用
Window.setInterval()
设置的重复执行任务。 Window.clearTimeout()
-
取消使用
Window.setTimeout()
设置的延时执行任务。 Window.close()
-
关闭当前窗口。
Window.confirm()
-
显示一个带有用户需要回应的信息对话框。
Window.createImageBitmap()
-
接受各种不同的图像源,并返回一个
Promise
,经兑现可得到ImageBitmap
。可以选择将图片源裁剪成以 (sx, sy) 为起点的像素矩形,宽度为 sw,高度为 sh。 Window.dispatchEvent()
-
用于触发事件。
Window.dump()
非标准-
向控制台中写一条消息。
Window.fetch()
-
开始从网络获取资源的过程。
Window.find()
非标准-
在窗口中搜索给定的字符串。
Window.focus()
-
在当前窗口上设置焦点。
Window.getComputedStyle()
-
获取指定元素的计算样式。计算的样式表示该元素的所有 CSS 属性的计算值。
Window.getDefaultComputedStyle()
非标准-
获取指定元素的默认计算样式,忽略作者样式表。
Window.getSelection()
-
返回代表所选项目的 selection 对象。
Window.matchMedia()
-
返回代表指定媒体查询字符串的
MediaQueryList
对象。 Window.moveBy()
-
将当前窗口移动一个指定的偏量值。
Window.moveTo()
-
将窗口移动到指定的坐标。
Window.open()
-
打开一个新窗口。
Window.postMessage()
-
为一个窗口向另一个窗口发送一串数据提供了安全的手段,该窗口不需要与第一个窗口在同一域内。
Window.print()
-
打开“打印”对话框,打印当前文档。
Window.prompt()
-
返回用户在提示对话框中输入的文本。
Window.queryLocalFonts()
实验性Window.removeEventListener()
-
从 window 上移除一个事件监听器。
Window.reportError()
-
报告一个脚本中的错误,模拟一个未处理的异常。
Window.requestAnimationFrame()
-
告诉浏览器一个动画正在进行中,要求浏览器为下一个动画帧安排窗口的重绘。
Window.requestIdleCallback()
-
启用浏览器空闲期间的任务调度。
Window.resizeBy()
-
按一定的变化量调整当前窗口的大小。
Window.resizeTo()
-
动态地调整窗口的大小。
Window.scroll()
-
将窗口滚动到文档中的一个特定位置。
Window.scrollBy()
-
将窗口中的文档按给定值滚动。
Window.scrollByLines()
非标准-
按给定的行数滚动文档。
Window.scrollByPages()
非标准-
按给定的页数滚动文档。
Window.scrollTo()
-
将文档滚动至特定坐标。
Window.setImmediate()
-
在浏览器完成其他繁重的任务后执行一个函数。
Window.setInterval()
-
安排一个函数,在给定的毫秒数过去后执行。
Window.setResizable()
非标准-
切换用户调整窗口大小的能力。
Window.setTimeout()
-
安排函数在给定的时间内执行。
Window.sizeToContent()
非标准-
根据窗口的内容确定其大小。
Window.showOpenFilePicker()
实验性-
显示一个文件选择器,允许用户选择一个文件或多个文件。
Window.showSaveFilePicker()
实验性-
显示一个文件选择器,允许用户保存一个文件。
Window.showDirectoryPicker()
实验性-
显示一个目录选择器,允许用户选择一个目录。
Window.stop()
-
该方法停止了窗口的加载。
Window.updateCommands()
非标准-
更新当前 chrome 窗口(用户界面)的命令状态。
已弃用的方法
Window.back()
非标准 已弃用-
在窗口历史中后退一步。该方法已被废弃,应该使用
history.back()
代替。 Window.captureEvents()
已弃用-
注册窗口以捕获所有指定类型的事件。
Window.forward()
非标准 已弃用-
在窗口历史中前进一步。该方法已被废弃,应该使用
history.forward()
代替。 Window.releaseEvents()
已弃用-
解除窗口对特定类型事件的捕获。
Window.showModalDialog()
非标准 已弃用-
显示一个对话框。
事件
通过使用 addEventListener()
或给这个接口的 oneventname
属性指定一个事件监听器来监听这些事件。
error
-
当一个资源加载失败,或不能使用时触发该事件。例如,如果脚本有一个执行错误,或者图像找不到或无效。
languagechange
-
当用户的首选语言发生变化时,在全局范围对象中触发该事件。
devicemotion
-
以固定的时间间隔触发该事件,显示设备所接受的物理加速力的大小和旋转速率(如果有)。
deviceorientation
-
当磁力计方向传感器提供了关于设备当前方向与地球坐标框架的新数据时,触发该事件。
resize
-
窗口大小发生变化时触发。
storage
-
当一个存储区域(
localStorage
或sessionStorage
)在另一个文档的上下文中被修改时,触发该事件。
动画事件
animationcancel
-
当一个动画意外地中止时,触发该事件。
animationend
-
当一个动画正常完成时,触发该事件。
animationiteration
-
当一个动画迭代完成时,触发该事件。
animationstart
-
当一个动画开始时,触发该事件。
剪切板事件
连接事件
聚焦事件
Gamepad 事件
gamepadconnected
-
当浏览器检测到游戏板已被连接或首次使用游戏板的按钮/轴时启动。
gamepaddisconnected
-
当浏览器检测到游戏板被断开连接时启动。
历史记录事件
hashchange
-
当 URL 的片段标识符(URL 中以
#
符号开头及其后面的部分)发生变化时,触发该事件。 pagehide
-
当浏览器隐藏了当前的文档,而在切换到显示会话历史中的另一个文档时触发该事件。例如,当用户点击“后退”按钮或点击“前进”按钮在会话历史中移动时,就会发生这种情况。
pageshow
-
当浏览器因导航任务而使文件可见时触发该事件,不仅包括页面首次加载时,还包括用户在同一标签内导航到另一个页面后再返回该页面等情况。
popstate
-
当活动的历史条目改变时,触发该事件。
加载和卸载事件
beforeunload
-
当窗口、文档及其资源即将被卸载时,触发该事件。
load
-
当整个页面加载完毕时触发该事件,包括所有依赖资源,如样式表图片。
unload
-
当文档或子资源正在被卸载时触发,触发该事件。
清单事件
appinstalled
-
当浏览器成功地将一个页面安装为一个应用程序时,触发该事件。
beforeinstallprompt
-
当用户即将被提示安装一个 web 应用程序时,触发该事件。
消息事件
message
-
窗口收到消息时触发该事件,例如从另一个浏览上下文中调用
Window.postMessage()
。 messageerror
-
当
Window
对象收到无法反序列化的消息时,触发该事件。
打印事件
afterprint
-
在相关文档开始打印或打印预览关闭后,触发该事件。
beforeprint
-
当相关文件即将被打印或预览打印时,触发该事件。
Promise 拒绝事件
rejectionhandled
-
每当一个 JavaScript
Promise
被拒绝时,不管是否有处理程序来捕捉拒绝,都会触发该事件。 unhandledrejection
-
当 JavaScript
Promise
被拒绝,但没有处理程序来捕获拒绝时,触发该事件。
渐变事件
transitioncancel
-
当 CSS 渐变被取消时,触发该事件。
transitionend
-
当 CSS 渐变完成时,触发该事件。
transitionrun
-
当 CSS 渐变首次创建时,触发该事件。
transitionstart
-
当 CSS 渐变真正开始时,触发该事件。
已废弃事件
orientationchange
已弃用-
当设备的方向改变时,触发该事件。
vrdisplayactivate
已弃用 非标准-
当显示器可供呈现时,触发该事件。
vrdisplayconnect
已弃用 非标准-
当兼容的 VR 设备被连接到电脑上时,触发该事件。
vrdisplaydisconnect
已弃用 非标准-
当兼容的 VR 设备从电脑上断开时,触发该事件。
vrdisplaydeactivate
已弃用 非标准-
当显示器不再可供呈现时,触发该事件。
vrdisplaypresentchange
已弃用 非标准-
当 VR 设备的呈现状态发生变化时触发该事件,即从呈现状态变成不呈现状态,或者反之亦然。
接口
参见 DOM 参考文档。
规范
Specification |
---|
HTML Standard # the-window-object |
浏览器兼容性
BCD tables only load in the browser