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 |
浏览器兼容性
加载中…