跳到主要内容

Window

window 对象表示一个包含 DOM 文档的窗口,其 document 属性指向窗口中载入的 DOM 文档 。

使用 document.defaultView 属性可以获取指定文档所在窗口。

代表了脚本正在运行的窗口的 window 全局变量,被暴露给 Javascript 代码。

实例属性

本接口从 EventTarget 接口继承属性。

注意,对象类型的属性(例如:覆盖内建元素的原型)被列于下面单独的小节之中。

  • Window.caches 只读

    • 返回与当前环境相关的 CacheStorage 对象。这个对象可以实现一些功能,如存储供离线使用的资源,以及对请求生成自定义响应。
  • Window.clientInformation 只读

    • Window.navigator 对象的别名。
  • Window.closed 只读

    • 此属性表示当前窗口是否关闭。
  • Window.console 只读

    • 返回对 console 对象的引用,该对象提供对浏览器调试控制台的访问。
  • Window.crypto 只读

    • 返回浏览器的 crypto 对象。
  • Window.customElements 只读

    • 返回对 CustomElementRegistry 对象的引用,该对象可用于注册新的自定义元素并获取之前注册的自定义元素- 的信息。
  • Window.devicePixelRatio 只读

    • 返回当前显示器中物理像素和设备独立像素之间的比率。
  • Window.document 只读

    • 返回对 window 所包含的文档的引用。
  • Window.frameElement 只读

    • 返回窗口被嵌入的元素,如果窗口没有被嵌入,则返回空。
  • Window.frames 只读

    • 返回当前窗口中的子框架(subframe)形成的数组。
  • Window.history 只读

    • 返回对 history 对象的引用。
  • Window.indexedDB 只读

    • 为应用程序提供异步访问索引数据库的能力;返回一个 IDBFactory 对象。
  • Window.innerHeight 只读

    • 获取浏览器窗口的内容区域的高度,包括(已渲染的)水平滚动条。
  • Window.innerWidth 只读

    • 获取浏览器窗口的内容区域的宽度,包括(已渲染的)竖直滚动条。
  • Window.isSecureContext 只读

    • 返回一个布尔值,表示当前上下文安全(true)或不安全(false)。
  • Window.length 只读

    • 返回窗口中的帧数。参见 window.frames。
  • Window.location

    • 获取/设置 window 对象的位置,或当前的 URL。
  • Window.locationbar 只读

    • 返回 locationbar 对象。
  • Window.localStorage 只读

    • 返回一个对用于存储数据的本地存储对象的引用,该对象只能由创建它的源访问。
  • Window.menubar 只读

    • 返回 menubar 对象。
  • Window.mozInnerScreenX 只读 非标准

    • 返回窗口视口左上角的水平(X)坐标,以屏幕坐标表示。这个值是以 CSS 像素为单位报告的。请参阅 - nsIDOMWindowUtils 中的 mozScreenPixelsPerCSSPixel,以获得转换系数,以便在需要时适应屏幕像素。
  • Window.mozInnerScreenY 只读 非标准

    • 返回窗口视口左上角的垂直(Y)坐标,以屏幕坐标表示。这个值是以 CSS 像素为单位报告的。请参阅 - mozScreenPixelsPerCSSPixel,如果需要的话,可以用一个转换系数来适应屏幕像素。
  • Window.name

    • 获取/设置 window 对象的名称。
  • Window.navigator 只读

    • 返回对 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 (en-US) 只读

    • 返回 personalbar 对象。
  • Window.scheduler (en-US) 只读

    • 返回与当前上下文相关的 Scheduler (en-US) 对象。这是使用优先级任务调度 API (en-US) 的入口。
  • 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 (en-US) 只读

    • 返回 SpeechSynthesis 对象,这是使用 Web Speech API 语音合成功能的入门点。
  • Window.statusbar (en-US) 只读

    • 返回 statusbar 对象。
  • Window.toolbar (en-US) 只读

    • 返回 toolbar 对象。
  • Window.top 只读

    • 返回对窗口层次结构中最顶层窗口的引用。这个属性是只读的。
  • Window.visualViewport 只读

    • 返回 VisualViewport 对象,代表一个给定窗口的视觉视口。
  • Window.window 只读

    • 返回对当前 window 的引用。
  • window[0]、window[1] 等

    • 以逐帧形式返回对 window 对象的引用,要了解更多细节,参见 Window.frames。
  • 实例方法

  • 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()

    • 取消使用 setInterval() 设置的重复执行任务。
  • Window.clearTimeout()

    • 取消使用 setTimeout() 设置的延时执行任务。
  • Window.close()

    • 关闭当前窗口。
  • Window.confirm()

    • 显示一个带有用户需要回应的信息对话框。
  • Window.createImageBitmap()

    • 接受各种不同的图像源,并返回一个 Promise,经兑现可得到 ImageBitmap。可以选择将图片源裁剪成以 (sx, - sy) 为起点的像素矩形,宽度为 sw,高度为 sh。
  • Window.dispatchEvent()

    • 用于触发事件。
  • Window.fetch()

    • 开始从网络获取资源的过程。
  • Window.focus()

    • 在当前窗口上设置焦点。
  • Window.getComputedStyle()

    • 获取指定元素的计算样式。计算的样式表示该元素的所有 CSS 属性的计算值。
  • Window.getSelection()

    • 返回代表所选项目的 selection 对象。
  • Window.matchMedia()

    • 返回代表指定媒体查询字符串的 MediaQueryList 对象。
  • Window.moveBy()

    • 将当前窗口移动一个指定的偏量值。
  • Window.moveTo()

    • 将窗口移动到指定的坐标。
  • Window.open()

    • 打开一个新窗口。
  • Window.postMessage()

    • 为一个窗口向另一个窗口发送一串数据提供了安全的手段,该窗口不需要与第一个窗口在同一域内。
  • Window.print()

    • 打开“打印”对话框,打印当前文档。
  • Window.prompt()

    • 返回用户在提示对话框中输入的文本。
  • Window.removeEventListener()

    • 从 window 上移除一个事件监听器。
  • Window.reportError() (en-US)

    • 报告一个脚本中的错误,模拟一个未处理的异常。
  • Window.requestAnimationFrame()

    • 告诉浏览器一个动画正在进行中,要求浏览器为下一个动画帧安排窗口的重绘。
  • Window.requestIdleCallback()

    • 启用浏览器空闲期间的任务调度。
  • Window.resizeBy()

    • 按一定的变化量调整当前窗口的大小。
  • Window.resizeTo()

    • 动态地调整窗口的大小。
  • Window.scroll()

    • 将窗口滚动到文档中的一个特定位置。
  • Window.scrollBy()

    • 将窗口中的文档按给定值滚动。
  • Window.scrollTo()

    • 将文档滚动至特定坐标。
  • Window.setImmediate()

    • 在浏览器完成其他繁重的任务后执行一个函数。
  • Window.setInterval()

    • 安排一个函数,在给定的毫秒数过去后执行。
  • Window.setTimeout()

    • 安排函数在给定的时间内执行。
  • Window.stop()

    • 该方法停止了窗口的加载。

动画事件

  • animationcancel (en-US)

    • 当一个动画意外地中止时,触发该事件。
  • animationend (en-US)

    • 当一个动画正常完成时,触发该事件。
  • animationiteration (en-US)

    • 当一个动画迭代完成时,触发该事件。
  • animationstart (en-US)

    • 当一个动画开始时,触发该事件。

剪切板事件

  • copy

    • 当用户通过浏览器的用户界面启动一个复制动作时,触发该事件。也可通过 oncopy 属性设置。
  • cut

    • 当用户通过浏览器的用户界面启动一个剪切动作时,触发该事件。也可通过 oncut 属性设置。
  • paste

    • 当用户通过浏览器的用户界面启动一个粘贴动作时,触发该事件。也可通过 paste 属性设置。

连接事件

  • offline

    • 当浏览器失去了对网络的访问,并且 navigator.onLine 的值转换为 false 时,触发该事件。
  • online

    • 当浏览器获得了对网络的访问,并且 navigator.onLine 的值转换为 true 时,触发该事件。

聚焦事件

  • blur

    • 当一个元素失去焦点时,触发该事件。
  • focus

    • 当一个元素获得焦点时,触发该事件。

Gamepad 事件

  • gamepadconnected

    • 当浏览器检测到游戏板已被连接或首次使用游戏板的按钮/轴时启动。
  • gamepaddisconnected (en-US)

    • 当浏览器检测到游戏板被断开连接时启动。

历史记录事件

  • 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 (en-US)

    • 当 CSS 渐变被取消时,触发该事件。
  • transitionend (en-US)

    • 当 CSS 渐变完成时,触发该事件。
  • transitionrun (en-US)

    • 当 CSS 渐变首次创建时,触发该事件。
  • transitionstart (en-US)

    • 当 CSS 渐变真正开始时,触发该事件。

参考链接

MDN 官网:https://developer.mozilla.org/zh-CN/docs/Web/API/Window