HTMLCanvasElement:contextlost 事件
當用戶代理檢測到與 CanvasRenderingContext2D 上下文關聯的後備儲存丟失時,會觸發 contextlost 事件,它是 Canvas API 的一部分。上下文可能由於多種原因丟失,例如驅動程式崩潰、應用程式記憶體不足等。
預設情況下,使用者代理會嘗試恢復上下文,然後觸發 contextrestored 事件。使用者程式碼可以透過在事件處理期間呼叫 Event.preventDefault() 來阻止恢復上下文。
語法
在諸如 addEventListener() 之類的方法中使用事件名稱,或設定事件處理程式屬性。
js
addEventListener("contextlost", (event) => { })
oncontextlost = (event) => { }
事件型別
一個通用的 Event。
示例
以下程式碼片段會檢測 contextlost 事件。
js
const canvas = document.getElementById("canvas");
canvas.addEventListener("contextlost", (event) => {
console.log(event);
});
如果想阻止上下文被恢復,程式碼可能看起來像這樣:
js
const canvas = document.getElementById("canvas");
canvas.addEventListener("contextlost", (event) => {
event.preventDefault();
});
規範
| 規範 |
|---|
| HTML # event-contextlost |
瀏覽器相容性
載入中…