ServiceWorkerGlobalScope:backgroundfetchclick 事件
注意:此功能仅在 Service Workers 中可用。
ServiceWorkerGlobalScope 接口的 backgroundfetchclick 事件会在用户点击浏览器提供的用于显示 后台获取 操作进度的 UI 时触发。
此事件不可取消,也不会冒泡。
语法
在诸如 addEventListener() 之类的方法中使用事件名称,或设置事件处理程序属性。
js
addEventListener("backgroundfetchclick", (event) => { })
onbackgroundfetchclick = (event) => { }
事件类型
事件属性
继承自其父级 ExtendableEvent 的属性。
BackgroundFetchEvent.registration-
返回用户点击了其进度对话框的
BackgroundFetchRegistration。
描述
当 后台获取 操作开始时,浏览器会向用户显示一个 UI 元素,以指示操作的进度。如果用户点击该元素,浏览器将启动 Service Worker(如果需要),并在 Service Worker 的全局作用域中触发 backgroundfetchclick 事件。
在这种情况下,处理程序的常见任务是打开一个窗口,向用户提供有关获取操作的更多详细信息。
示例
打开一个包含更多详细信息的窗口
此事件处理程序使用全局 clients 属性打开一个窗口,向用户提供有关获取操作的更多详细信息。它会根据获取是否已完成而打开不同的窗口。
js
addEventListener("backgroundfetchclick", (event) => {
const registration = event.registration;
if (registration.result === "success") {
clients.openWindow("/play-movie");
} else {
clients.openWindow("/movie-download-progress");
}
});
规范
| 规范 |
|---|
| Background Fetch # dom-serviceworkerglobalscope-onbackgroundfetchclick |
浏览器兼容性
加载中…