Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

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():

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

Alternativ können Sie ihn der Ereignisbehandlungs-Eigenschaft der Schnittstelle zuweisen:

js
oncontextlost = (event) => { }

Ereignistyp

Ein generisches Event.

Beispiel

Das folgende Codefragment erkennt das contextlost-Ereignis.

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

js
const canvas = document.getElementById("canvas");

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

Spezifikationen

Spezifikation
HTML
# event-contextlost

Browser-Kompatibilität

Siehe auch