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.

js
addEventListener("contextlost", (event) => {});

oncontextlost = (event) => {};

Ereignistyp

Ein generisches Event.

Beispiele

Der folgende Codeausschnitt erkennt das contextlost Ereignis.

js
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:

js
canvas.addEventListener("contextlost", (event) => {
  event.preventDefault();
});

Spezifikationen

Specification
HTML
# event-contextlost
HTML
# handler-offscreencanvas-oncontextlost

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
contextlost event

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support

Siehe auch