Maison  >  Article  >  interface Web  >  La détection de la mise au point des onglets multi-navigateurs peut-elle être obtenue de manière fiable ?

La détection de la mise au point des onglets multi-navigateurs peut-elle être obtenue de manière fiable ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-23 13:10:29773parcourir

Can Cross-Browser Tab Focus Detection Be Achieved Reliably?

Détection fiable entre navigateurs du focus des onglets

Problème :

Il est souvent souhaitable de savoir quand un onglet du navigateur a le focus, en particulier pour les applications qui effectuent des tâches à intervalles réguliers. Par exemple, dans une application qui met périodiquement à jour les cours des actions, suspendre l’interrogation lorsque l’onglet n’est pas ciblé peut économiser de la bande passante et améliorer l’expérience utilisateur. Cela peut-il être réalisé de manière fiable sur différents navigateurs ?

Solution :

Oui, les événements window.onfocus et window.onblur fournissent une méthode fiable pour détecter les onglets. le focus change.

Explication :

  • Lorsque l'onglet du navigateur obtient le focus, l'événement window.onfocus est déclenché.
  • Lorsque l'onglet perd le focus, l'événement window.onblur est déclenché.

Implémentation :

Pour utiliser ces événements pour détecter le focus des onglets, vous pouvez ajouter des écouteurs d'événements comme suit :

<code class="javascript">window.onfocus = function() {
  // Tab has gained focus
};

window.onblur = function() {
  // Tab has lost focus
};</code>

Exemple :

Dans le contexte de l'application de surveillance du cours des actions :

<code class="javascript">window.onblur = function() {
  stopPricePolling(); // Suspend polling when tab loses focus
};

window.onfocus = function() {
  startPricePolling(); // Resume polling when tab gains focus
};</code>

Cette implémentation met effectivement en pause l'interrogation lorsque l'onglet n'est pas actif, garantissant une allocation optimale des ressources et une expérience utilisateur plus fluide.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn