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

View in English Always switch to English

Dokument: prerenderingchange-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.

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

Das prerenderingchange-Ereignis wird für ein vorgerendertes Dokument ausgelöst, wenn es aktiviert wird (d.h. wenn der Benutzer die Seite aufruft).

Syntax

Verwenden Sie den Ereignisnamen in addEventListener():

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

Alternativ können Sie ihn der Ereignisbehandlungseigenschaft der Schnittstelle zuweisen:

js
onprerenderingchange = (event) => { }

Ereignistyp

Ein generisches Event.

Beispiele

Ausführung von Code während des Vorrenderns verhindern

Das Beispiel zeigt, wie sich die Ausführung von Code, der andernfalls während des Vorrenderns ausgeführt würde, bis nach der Aktivierung der Seite aufschieben lässt. Dies ist nützlich für Analysecode, der nur relevant ist, wenn die Seite tatsächlich aufgerufen wird.

Der Code prüft mithilfe von Document.prerendering, ob die Seite gerade vorgerendert wird. Falls ja, fügt er einen Event-Listener hinzu, der nach der Aktivierung der Seite eine Funktion zur Initialisierung des Analysecodes ausführt. Wird eine Seite nicht vorgerendert, wird der Analysecode sofort ausgeführt.

js
if (document.prerendering) {
  document.addEventListener("prerenderingchange", initAnalytics, {
    once: true,
  });
} else {
  initAnalytics();
}

Beachten Sie, dass diese Art von Code nicht verwendet werden sollte, um zu messen, wie oft eine vorgerenderte Seite aktiviert wird: Der Code wird möglicherweise erst ausgeführt, nachdem die Seite bereits aktiviert wurde.

Hinweis: Weitere Informationen darüber, welche Aktivitäten Sie möglicherweise bis nach Abschluss des Vorrenderns aufschieben sollten, finden Sie auf der Übersichtsseite zur Speculation Rules API, insbesondere im Abschnitt Unsichere Bedingungen für spekulatives Laden.

Aktivierungen vorgerenderter Seiten messen

Dieser Code zeigt, wie Sie messen können, wie oft eine vorgerenderte Seite aktiviert wird. Er verwendet prerenderingchange, um Aktivierungsereignisse zu erfassen, und Performance.getEntriesByType(), um Navigationsaktivierungen zu erfassen.

js
if (document.prerendering) {
  document.addEventListener(
    "prerenderingchange",
    () => {
      console.log("Prerender activated after this script ran");
    },
    { once: true },
  );
} else if (performance.getEntriesByType("navigation")[0]?.activationStart > 0) {
  console.log("Prerender activated before this script ran");
} else {
  console.log("This page load was not via prerendering");
}

Spezifikationen

Spezifikation
Prerendering Revamped
# eventdef-document-prerenderingchange
Prerendering Revamped
# dom-document-onprerenderingchange

Browser-Kompatibilität

Siehe auch