OffscreenCanvas: contextlost Ereignis
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Das contextlost
Ereignis der OffscreenCanvas
Schnittstelle wird ausgelöst, wenn der Browser erkennt, dass der OffscreenCanvasRenderingContext2D
Kontext verloren gegangen ist. Kontexte können aus verschiedenen Gründen verloren gehen, wie z.B. wenn ein zugehöriger GPU-Treiber abstürzt oder die Anwendung keinen Speicherplatz mehr hat.
Standardmäßig versucht der User-Agent, den Kontext wiederherzustellen und löst dann das contextrestored
Ereignis aus. Benutzer-Code kann verhindern, dass der Kontext wiederhergestellt wird, indem Event.preventDefault()
während der Ereignisbehandlung aufgerufen wird.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener()
, oder setzen Sie eine Ereignishandler-Eigenschaft.
addEventListener("contextlost", (event) => {});
oncontextlost = (event) => {};
Ereignistyp
Ein generisches Event
.
Beispiele
Der folgende Codeausschnitt erkennt das contextlost
Ereignis.
const canvas = new OffscreenCanvas(256, 256);
const gl = offscreen.getContext("2d");
// Do drawing etc
canvas.addEventListener("contextlost", (event) => {
console.log(event);
});
Um zu verhindern, dass der Kontext wiederhergestellt wird, könnte der Ereignishandler-Code stattdessen so aussehen:
canvas.addEventListener("contextlost", (event) => {
event.preventDefault();
});
Spezifikationen
Specification |
---|
HTML Standard # event-contextlost |
HTML Standard # handler-offscreencanvas-oncontextlost |
Browser-Kompatibilität
BCD tables only load in the browser