PerformanceNavigationTiming: activationStart-Eigenschaft

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig, bevor Sie diese produktiv verwenden.

Die activationStart-Eigenschaft, die nur gelesen werden kann, stellt die Zeitspanne dar, die zwischen dem Beginn des Prerendering eines Dokuments und seiner Aktivierung liegt.

Wert

Ein DOMHighResTimeStamp, der die Dauer zwischen dem Start des Prerendering des Dokuments und der Aktivierung in Millisekunden darstellt.

Der Wert ist 0, wenn die Seite nicht prerendert wurde oder sich noch im Prerendering befindet.

Beispiele

Erkennung von prerendered Seiten

Wenn ein dokumentiert prerenderte 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
  );
}

Messung von leistungsbezogenen Meilensteinen, die von Nutzern wahrgenommen werden

Bei prerendered Seiten könnte eine Seite schon lange vor der eigentlichen Navigation erstellt worden sein. Wenn die Performance API auf prerendered Seiten verwendet wird, ist es wichtig, 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

Specification
Prerendering Revamped
# dom-performancenavigationtiming-activationstart

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch