OffscreenCanvas: contextlost-Ereignis
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more browser support for this feature? Tell us why.
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.
addEventListener("contextlost", (event) => { })
oncontextlost = (event) => { }
Ereignistyp
Ein generisches Event.
Beispiele
Das folgende Codefragment 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
| Spezifikation |
|---|
| HTML> # event-contextlost> |
| HTML> # handler-offscreencanvas-oncontextlost> |