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

View in English Always switch to English

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:

js
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.

js
// 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

Siehe auch