Document.visibilityState

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

La propriété en lecture seule Document.visibilityState renvoie la visibilité du document, c'est-à-dire informe si l'élément est visible dans son contexte. Il est utile de savoir si le document est en arrière-plan ou sur un onglet invisible ou seulement chargé pour le pré-rendu. Les valeurs possibles sont :

  • 'visible' : le contenu de la page peut être au-moins partiellement visible. Dans la pratique, cela signifie que la page est l'onglet de premier plan d'une fenêtre non réduite.
  • 'hidden' (caché) : le contenu de la page n'est pas visible pour l'utilisateur. Dans la pratique , cela signifie que le document est soit dans un onglet d'arrière-plan ou une partie d'une fenêtre réduite, soit que le verrouillage de l'écran du système d'exploitation est actif.
  • 'prerender' (prérendu) : le contenu de la page est prérendu et n'est pas visible par l'utilisateur (considéré caché aux fins de document.hidden). Le document peut démarrer dans cet état mais ne changera jamais à partir d'une autre valeur. Note : le support du navigateur est facultatif.
  • 'unloaded' (déchargé) : la page est en train d'être déchargée de la mémoire. Remarque : le support du navigateur est facultatif.

Lorsque la valeur de cette propriété change, l'évènement visibilitychange est envoyé au Document.

L'utilisation typique de ceci peut être d'empêcher le téléchargement de certains éléments actifs lorsque le document est uniquement prérendu, ou d'arrêter certaines activités lorsque le document est en arrière-plan ou réduit au minimum.

Syntaxe

js
var string = document.visibilityState;

Exemples

js
document.addEventListener("visibilitychange", function () {
  console.log(document.visibilityState);
  // Modifier le comportement...
});

Spécifications

Specification
HTML Standard
# dom-document-visibilitystate

Compatibilité des navigateurs

BCD tables only load in the browser