Maison >interface Web >js tutoriel >Comment puis-je suivre de manière fiable le départ d'un utilisateur d'une page Web, même avec la fermeture du navigateur ?

Comment puis-je suivre de manière fiable le départ d'un utilisateur d'une page Web, même avec la fermeture du navigateur ?

DDD
DDDoriginal
2024-11-24 11:13:11185parcourir

How Can I Reliably Track User Departure from a Web Page, Even with Browser Closure?

JavaScript, navigateurs et fermeture de fenêtres : suivi du départ des utilisateurs

Le suivi du départ des utilisateurs est essentiel pour capturer des données et effectuer des actions avant qu'un utilisateur ne parte une page. Bien que la surveillance des événements de navigation soit relativement simple, la détection des fermetures de fenêtres ou des modifications d'URL sans interaction de l'utilisateur pose un défi.

Capturer l'événement de fermeture de fenêtre

L'API Beacon, disponible dans les versions modernes navigateurs, fournit une solution. Les requêtes Beacon sont conçues pour s'exécuter même lorsqu'un utilisateur quitte brusquement une page, garantissant ainsi que les actions critiques peuvent toujours être effectuées.

Pour utiliser l'API Beacon, utilisez l'extrait de code suivant :

var url = "https://example.com/foo";
var data = "bar";

navigator.sendBeacon(url, data);

Alternatives pour les navigateurs plus anciens

Si la prise en charge des navigateurs plus anciens est nécessaire, l'événement visibilitéchange propose une solution de secours. Le passage de « passif » à « caché » dans cet événement signifie le départ imminent de l'utilisateur. Voici un exemple :

document.addEventListener('visibilitychange', function() {
  if (document.visibilityState === "hidden") {
    // Perform desired actions (e.g., send beacon request)
  }
});

Fiabilité et bloqueurs de publicités

Le changement de visibilité est devenu un indicateur fiable de la sortie des utilisateurs dans les navigateurs modernes. Cependant, les bloqueurs de publicités peuvent interférer avec les demandes de balises, en particulier si elles sont d'origine croisée ou proviennent de domaines de suivi connus.

Considérations intersites

Les demandes de balises sont des demandes POST qui respectent Restrictions CORS. Lorsque vous effectuez des requêtes intersites, assurez-vous qu'elles répondent aux exigences nécessaires pour éviter le blocage par le navigateur.

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