远程播放:prompt() 方法
prompt()
方法是 RemotePlayback
接口的方法,它会提示用户选择可用的远程播放设备,并授予当前媒体使用该设备播放的权限。
如果用户授予权限,则 state
将设置为 connecting
,用户代理将连接到设备以启动播放。
如果用户选择断开与设备的连接,则 state
将设置为 disconnected
,用户代理将断开与该设备的连接。
语法
js
prompt()
参数
无。
返回值
一个 Promise
,在用户接受或拒绝提示后,该 Promise 将解析为 undefined
。
异常
该 Promise 将因以下异常之一而被拒绝
InvalidStateError
DOMException
-
如果媒体元素的
disableRemotePlayback
为true
,则抛出此异常。 OperationError
DOMException
-
如果此媒体元素或浏览上下文之前对
prompt()
的调用已存在未解决的 Promise,则抛出此异常。 InvalidAccessError
DOMException
-
如果用户最近没有与该设备交互,则抛出此异常。
NotSupportedError
DOMException
-
如果用户代理知道此特定媒体的远程播放不可行,则抛出此异常。
NotFoundError
DOMException
-
如果远程播放不可用,则抛出此异常。
NotAllowedError
DOMException
-
如果用户拒绝使用该设备的权限,则抛出此异常。
安全
需要 短暂的用户激活。用户必须与页面或 UI 元素交互才能使用此功能。
示例
在以下示例中,系统会提示用户选择一个远程播放设备来播放视频。
js
devicesBtn.onclick = () => {
// Request the user to select a remote playback device.
videoElem.remote
.prompt()
// Update the UI and monitor the connected state.
.then(updateRemotePlaybackState);
// Otherwise, the user cancelled the selection UI or no screens were found.
};
规范
规范 |
---|
远程播放 API # dom-remoteplayback-prompt |
浏览器兼容性
BCD 表格仅在启用了 JavaScript 的浏览器中加载。