HTMLCanvasElement:webglcontextlost 事件
如果用户代理检测到与 WebGLRenderingContext
对象关联的绘图缓冲区已丢失,则会触发 WebGL API 的webglcontextlost
事件。
此事件不会冒泡。
语法
在诸如 addEventListener()
的方法中使用事件名称,或设置事件处理程序属性。
js
addEventListener("webglcontextlost", (event) => {});
onwebglcontextlost = (event) => {};
事件类型
一个 WebGLContextEvent
。继承自 Event
。
事件属性
此接口继承其父接口 Event
的属性。
WebGLContextEvent.statusMessage
-
一个只读属性,包含有关事件的其他信息。
示例
借助 WEBGL_lose_context
扩展,您可以模拟 webglcontextlost
事件
js
const canvas = document.getElementById("canvas");
const gl = canvas.getContext("webgl");
canvas.addEventListener("webglcontextlost", (event) => {
console.log(event);
});
gl.getExtension("WEBGL_lose_context").loseContext();
// "webglcontextlost" event is logged.
规范
规范 |
---|
WebGL 规范 # 5.15.2 |
浏览器兼容性
BCD 表格仅在浏览器中加载