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 des OffscreenCanvas-Interfaces wird ausgelöst, wenn der Browser erkennt, dass der Kontext des OffscreenCanvasRenderingContext2D verloren gegangen ist. Kontexte können aus verschiedenen Gründen verloren gehen, wie z.B. ein Absturz des zugehörigen GPU-Treibers oder die Anwendung läuft aus dem Speicher, und so weiter.

Standardmäßig wird der Benutzeragent versuchen, den Kontext wiederherzustellen und dann das contextrestored-Ereignis auslösen. Benutzer-Code kann verhindern, dass der Kontext wiederhergestellt wird, indem während der Ereignisbehandlung Event.preventDefault() 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

Das folgende Codefragment 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

Siehe auch