HTMLCanvasElement: 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 der Canvas API wird ausgelöst, wenn der User Agent erkennt, dass der einem CanvasRenderingContext2D-Kontext zugeordnete zugrunde liegende Speicher verloren gegangen ist.
Ein Kontext kann aus verschiedenen Gründen verloren gehen, beispielsweise durch einen Treiberabsturz oder weil der Anwendung der Arbeitsspeicher ausgeht.
Standardmäßig versucht der User Agent, den Kontext wiederherzustellen, und löst anschließend das contextrestored-Ereignis aus.
Anwendungscode kann die Wiederherstellung des Kontexts verhindern, indem er während der Ereignisverarbeitung Event.preventDefault() aufruft.
Syntax
Verwenden Sie den Ereignisnamen in addEventListener():
addEventListener("contextlost", (event) => { })
Alternativ können Sie ihn der Ereignisbehandlungs-Eigenschaft der Schnittstelle zuweisen:
oncontextlost = (event) => { }
Ereignistyp
Ein generisches Event.
Beispiel
Das folgende Codefragment erkennt das contextlost-Ereignis.
const canvas = document.getElementById("canvas");
canvas.addEventListener("contextlost", (event) => {
console.log(event);
});
Um die Wiederherstellung des Kontexts zu verhindern, könnte der Code stattdessen so aussehen:
const canvas = document.getElementById("canvas");
canvas.addEventListener("contextlost", (event) => {
event.preventDefault();
});
Spezifikationen
| Spezifikation |
|---|
| HTML> # event-contextlost> |