Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

PerformanceNavigationTiming : propriété activationStart

Limited availability

Cette fonctionnalité n'est pas Compatible car elle ne fonctionne pas dans certains des navigateurs les plus utilisés.

Expérimental: Il s'agit d'une technologie expérimentale.
Vérifiez attentivement le tableau de compatibilité des navigateurs avant de l'utiliser en production.

La propriété en lecture seule activationStart représente la durée entre le début de la pré-rendu d'un document et son activation.

Valeur

Un objet DOMHighResTimeStamp représentant la durée entre le début de la pré-rendu du document et son activation, en millisecondes.

La valeur est 0 si la page n'a pas été pré-rendue ou est encore en cours de pré-rendu.

Exemples

Détecter les pages pré-rendues

Lorsqu'un document pré-rendu est activé, activationStart est défini à l'heure courante. La fonction suivante permet de vérifier si une page est en cours de pré-rendu (prerendering) ou a déjà été pré-rendue :

js
function pagePrerendered() {
  return (
    document.prerendering ||
    self.performance?.getEntriesByType?.("navigation")[0]?.activationStart > 0
  );
}

Mesurer les jalons de performance perçus par l'utilisateur·ice

Avec les pages pré-rendues, une page peut avoir été créée bien avant d'être effectivement visitée. Lors de l'utilisation de l'API Performance sur des pages pré-rendues, il est essentiel de comparer les valeurs retournées avec activationStart afin d'éviter des mesures trompeuses.

js
// Temps jusqu'à l'activation
let activationStart =
  performance.getEntriesByType("navigation")[0].activationStart;

// Temps jusqu'au premier affichage
let firstPaint = performance.getEntriesByName("first-paint")[0].startTime;

// Temps jusqu'au premier affichage significatif
let firstContentfulPaint = performance.getEntriesByName(
  "first-contentful-paint",
)[0].startTime;

console.log(
  `temps jusqu'au premier affichage : ${firstPaint - activationStart}`,
);
console.log(
  `temps jusqu'au premier affichage significatif : ${firstContentfulPaint - activationStart}`,
);

Spécifications

Specification
Prerendering Revamped
# performance-navigation-timing-extension

Compatibilité des navigateurs

Voir aussi