画布外画布:contextrestored 事件

有限可用性

此功能并非基线功能,因为它在一些最广泛使用的浏览器中无法使用。

contextrestored 事件是 OffscreenCanvas 接口的一部分,如果浏览器恢复了先前丢失OffscreenCanvasRenderingContext2D 上下文,则会触发该事件。

收到此事件后,你可以重新绘制、重新获取资源并重新初始化上下文的狀態。

语法

在像 addEventListener() 这样的方法中使用事件名称,或者设置事件处理程序属性。

js
addEventListener("contextrestored", (event) => {});

oncontextrestored = (event) => {};

事件类型

一个通用的 Event

示例

下面的代码片段检测上下文恢复事件。

js
const canvas = new OffscreenCanvas(256, 256);
const gl = offscreen.getContext("2d");

canvas.addEventListener(
  "contextrestored",
  (e) => {
    console.log(e);
    // call to redrawCanvas() or similar
  },
  false,
);

规范

规范
HTML 标准
# event-contextrestored
HTML 标准
# handler-offscreencanvas-oncontextrestored

浏览器兼容性

BCD 表格仅在启用了 JavaScript 的浏览器中加载。

另请参阅