CaptureController
CaptureController
接口提供了一些方法,可用于进一步操作捕获会话,这些方法与通过MediaDevices.getDisplayMedia()
启动捕获会话无关。
CaptureController
对象通过将其作为选项对象 controller
属性的值传递到getDisplayMedia()
调用中,与捕获会话相关联。
构造函数
CaptureController()
实验性-
创建一个新的
CaptureController
对象实例。
实例方法
setFocusBehavior()
实验性-
控制捕获的选项卡或窗口是否会获得焦点,或者焦点是否会保留在包含捕获应用程序的选项卡中。
示例
js
// Create a new CaptureController instance
const controller = new CaptureController();
// Prompt the user to share a tab, window, or screen.
const stream = await navigator.mediaDevices.getDisplayMedia({ controller });
// Query the displaySurface value of the captured video track
const [track] = stream.getVideoTracks();
const displaySurface = track.getSettings().displaySurface;
if (displaySurface == "browser") {
// Focus the captured tab.
controller.setFocusBehavior("focus-captured-surface");
} else if (displaySurface == "window") {
// Do not move focus to the captured window.
// Keep the capturing page focused.
controller.setFocusBehavior("no-focus-change");
}
规范
规范 |
---|
屏幕捕获 # dom-capturecontroller |
浏览器兼容性
BCD 表仅在启用 JavaScript 的浏览器中加载。