PerformanceNavigationTiming: activationStart-Eigenschaft
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.
Nicht standardisiert: Diese Funktion ist nicht standardisiert. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.
Die schreibgeschützte Eigenschaft activationStart
repräsentiert die Zeit zwischen dem Beginn des Prerenderns eines Dokuments und dessen Aktivierung.
Wert
Ein DOMHighResTimeStamp
, der die Dauer zwischen dem Beginn des Prerenderns und der Aktivierung des Dokuments in Millisekunden darstellt.
Der Wert ist 0
, wenn die Seite nicht prerendert wurde oder sich noch im Prerendering befindet.
Beispiele
>Erkennen von prerenderten Seiten
Wenn ein prerendertes Dokument aktiviert wird, wird activationStart
auf die aktuelle Zeit gesetzt. Die folgende Funktion kann überprüfen, ob eine Seite prerendering
ist oder bereits prerendert wurde:
function pagePrerendered() {
return (
document.prerendering ||
self.performance?.getEntriesByType?.("navigation")[0]?.activationStart > 0
);
}
Messen von wahrgenommenen Leistungsmeilensteinen
Bei prerenderten Seiten kann es sein, dass eine Seite lange vor dem tatsächlichen Navigieren erstellt wurde. Bei der Nutzung der Performance API auf prerenderten Seiten ist es entscheidend, die zurückgegebenen Werte mit activationStart
zu vergleichen, um irreführende Messungen zu vermeiden.
// Time to when activation occurred
let activationStart =
performance.getEntriesByType("navigation")[0].activationStart;
// Time to first paint
let firstPaint = performance.getEntriesByName("first-paint")[0].startTime;
// Time to first contentful paint
let firstContentfulPaint = performance.getEntriesByName(
"first-contentful-paint",
)[0].startTime;
console.log(`time to first paint: ${firstPaint - activationStart}`);
console.log(
`time to first-contentful-paint: ${firstContentfulPaint - activationStart}`,
);
Spezifikationen
This feature does not appear to be defined in any specification.>Browser-Kompatibilität
Loading…