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

View in English Always switch to English

CloseWatcher: cancel-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.

Ein cancel-Ereignis wird für ein CloseWatcher-Objekt vor dem close-Ereignis ausgelöst, damit bei Bedarf verhindert werden kann, dass close ausgelöst wird. Es wird durch alle Schließsignale (z. B. die Esc-Taste) sowie durch CloseWatcher.requestClose() ausgelöst.

Syntax

Verwenden Sie den Ereignisnamen in addEventListener():

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

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

js
oncancel = (event) => { }

Ereignistyp

Ein Event.

Beispiele

Verwendung des cancel-Ereignisses

In diesem Beispiel bitten wir die Benutzer, zu bestätigen, dass sie die Komponente wirklich schließen möchten. Wenn sie dies nicht möchten, brechen wir das Ereignis mit Event.preventDefault() ab. Dadurch wird verhindert, dass das close-Ereignis ausgelöst wird.

js
watcher.addEventListener("cancel", (e) => {
  if (e.cancelable && hasUnsavedData) {
    const userReallyWantsToClose = confirm("Are you sure you want to close?");
    if (!userReallyWantsToClose) {
      e.preventDefault();
    }
  }
});

// Trigger a close request manually
watcher.requestClose();

Spezifikationen

Spezifikation
HTML
# handler-closewatcher-oncancel

Browser-Kompatibilität