NavigateEvent: NavigateEvent() Konstruktor

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Der NavigateEvent()-Konstruktor erstellt eine neue Instanz des NavigateEvent-Objekts.

Syntax

js
new NavigateEvent(type, init)

Parameter

type

Ein String, der den Typ des Ereignisses darstellt.

init

Ein Objekt, das zusätzlich zu den Eigenschaften, die in Event() definiert sind, die folgenden Eigenschaften hat:

canIntercept Optional

Ein Boolescher Wert, der definiert, ob die Navigation abgefangen werden kann oder nicht (z. B. kann eine Cross-Origin-Navigation nicht abgefangen werden). Standardwert ist false.

destination

Ein NavigationDestination-Objekt, das den Zielort beschreibt, zu dem navigiert wird.

downloadRequest Optional

Der Dateiname der angeforderten Datei im Falle einer Download-Navigation (z. B. ein <a>- oder <area>-Element mit einem download-Attribut). Standardwert ist null.

formData Optional

Das FormData-Objekt, das die übermittelten Daten bei einer POST-Formularübermittlung repräsentiert. Standardwert ist null.

hashChange Optional

Ein Boolescher Wert, der definiert, ob es sich bei der Navigation um eine Fragment-Navigation handelt (d.h. zu einem Fragment-Identifier im selben Dokument). Standardwert ist false.

hasUAVisualTransition Optional

Ein Boolescher Wert, der angibt, ob der User-Agent vor dem Auslösen dieses Ereignisses eine visuelle Transition für diese Navigation durchgeführt hat. Standardwert ist false.

info Optional

Der info-Datenwert, der von der auslösenden Navigationsoperation übergeben wurde (z. B. Navigation.back() oder Navigation.navigate()).

Der Typ der Navigation. Mögliche Werte — push, reload, replace und traverse. Standardwert ist push.

signal

Ein AbortSignal, das abgebrochen wird, wenn die Navigation abgebrochen wird (z. B. durch Betätigung der "Stop"-Taste im Browser oder durch Start einer anderen Navigation, die die laufende Navigation abbricht).

userInitiated Optional

Ein Boolescher Wert, der definiert, ob die Navigation vom Benutzer initiiert wurde (z. B. durch das Klicken auf einen Link, das Absenden eines Formulars oder das Drücken der "Zurück-/Vorwärts"-Tasten im Browser). Standardwert ist false.

Rückgabewert

Ein neues NavigateEvent-Objekt.

Beispiele

Ein Entwickler würde diesen Konstruktor nicht manuell verwenden. Ein neues NavigateEvent-Objekt wird erzeugt, wenn ein Handler als Ergebnis des navigate-Ereignisses ausgelöst wird.

js
navigation.addEventListener("navigate", (event) => {
  // Exit early if this navigation shouldn't be intercepted,
  // e.g. if the navigation is cross-origin, or a download request
  if (shouldNotIntercept(event)) {
    return;
  }

  const url = new URL(event.destination.url);

  if (url.pathname.startsWith("/articles/")) {
    event.intercept({
      async handler() {
        // The URL has already changed, so show a placeholder while
        // fetching the new content, such as a spinner or loading page
        renderArticlePagePlaceholder();

        // Fetch the new content and display when ready
        const articleContent = await getArticleContent(url.pathname);
        renderArticlePage(articleContent);
      },
    });
  }
});

Spezifikationen

Specification
HTML
# the-navigateevent-interface

Browser-Kompatibilität

Siehe auch