OffscreenCanvas: contextlost 事件
OffscreenCanvas 介面的 contextlost 事件,會在瀏覽器檢測到 OffscreenCanvasRenderingContext2D 上下文丟失時觸發。上下文丟失的原因有多種,例如關聯的 GPU 驅動程式崩潰,或應用程式記憶體不足等。
預設情況下,使用者代理會嘗試恢復上下文,然後觸發 contextrestored 事件。使用者程式碼可以透過在事件處理過程中呼叫 Event.preventDefault() 來阻止上下文恢復。
語法
在諸如 addEventListener() 之類的方法中使用事件名稱,或設定事件處理程式屬性。
js
addEventListener("contextlost", (event) => { })
oncontextlost = (event) => { }
事件型別
一個通用的 Event。
示例
下面的程式碼片段檢測 contextlost 事件。
js
const canvas = new OffscreenCanvas(256, 256);
const gl = offscreen.getContext("2d");
// Do drawing etc
canvas.addEventListener("contextlost", (event) => {
console.log(event);
});
要阻止上下文恢復,事件處理程式程式碼可能看起來像這樣
js
canvas.addEventListener("contextlost", (event) => {
event.preventDefault();
});
規範
| 規範 |
|---|
| HTML # event-contextlost |
| HTML # handler-offscreencanvas-oncontextlost |
瀏覽器相容性
載入中…