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():
addEventListener("prerenderingchange", (event) => { })
Alternativ können Sie ihn der Ereignisbehandlungseigenschaft der Schnittstelle zuweisen:
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.
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.
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
- Speculation Rules API
- Eigenschaft
prerendering - Eigenschaft
PerformanceNavigationTiming.activationStart