Document:exitPictureInPicture() 方法

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Document 接口的 exitPictureInPicture() 方法请求退出以画中画模式浮动在此文档中播放的视频,来恢复屏幕之前的状态。这通常与先前调用的 HTMLVideoElement.requestPictureInPicture() 相反。

语法

js
exitPictureInPicture()

参数

无。

返回值

一个 Promise,在用户代理退出画中画模式时兑现。如果在尝试退出全屏模式时发生错误,将会调用 promise 的 catch() 处理程序。

异常

InvalidStateError DOMException

如果 document.pictureInPictureElementnull,则抛出该异常。

示例

此示例使当前文档在鼠标点击按钮时退出画中画模式。

js
document.onclick = (event) => {
  if (document.pictureInPictureElement) {
    document
      .exitPictureInPicture()
      .then(() => console.log("文档已退出画中画模式"))
      .catch((err) => console.error(err));
  } else {
    video.requestPictureInPicture();
  }
};

注意,如果你想要跟踪页面上正在以画中画模式播放的视频,你应该在 HTMLVideoElement 元素上监听 enterpictureinpictureexitpictureinpicture 事件。或者,你可以检查 Document.pictureInPictureElement 元素是否引用了当前的 HTMLVideoElement 元素。

规范

Specification
Picture-in-Picture
# ref-for-dom-document-exitpictureinpicture

浏览器兼容性

BCD tables only load in the browser

参见