Détecter la fermeture du navigateur ou de l'onglet
P粉7606754522023-07-31 13:55:00
0
2
507
Existe-t-il un code JavaScript/jQuery multi-navigateurs capable de détecter si le navigateur ou l'onglet du navigateur est fermé, mais pas suite au clic sur un lien ?
Pour une raison quelconque, les navigateurs basés sur Webkit ne suivent pas la boîte de dialogue de la spécification. L'exemple ci-dessous présente un exemple d'arrêt qui fonctionne presque sur tous les navigateurs.
window.addEventListener("beforeunload", function (e) { var confirmationMessage = "\o/"; (e || window.event).returnValue = confirmationMessage; //Gecko + IE return confirmationMessage; //Webkit, Safari, Chrome });
Si je comprends bien, vous voulez savoir quand un onglet/une fenêtre est effectivement fermé. Eh bien, pour autant que je sache, la seule façon de détecter cela en JavaScript est d'utiliser les événements onunload ou onbeforeunload.
Malheureusement (ou heureusement ?), ces événements sont également déclenchés lorsque vous quittez un site Web via un lien ou utilisez le bouton retour de votre navigateur. C'est donc la meilleure réponse que je puisse donner, je ne pense pas que vous puissiez détecter nativement une fermeture pure en JavaScript. Veuillez me corriger si je comprends mal.
Selon la documentation MDN :
Pour une raison quelconque, les navigateurs basés sur Webkit ne suivent pas la boîte de dialogue de la spécification. L'exemple ci-dessous présente un exemple d'arrêt qui fonctionne presque sur tous les navigateurs.
Cet exemple fonctionne sur tous les navigateurs.
Si je comprends bien, vous voulez savoir quand un onglet/une fenêtre est effectivement fermé. Eh bien, pour autant que je sache, la seule façon de détecter cela en JavaScript est d'utiliser les événements onunload ou onbeforeunload.
Malheureusement (ou heureusement ?), ces événements sont également déclenchés lorsque vous quittez un site Web via un lien ou utilisez le bouton retour de votre navigateur. C'est donc la meilleure réponse que je puisse donner, je ne pense pas que vous puissiez détecter nativement une fermeture pure en JavaScript. Veuillez me corriger si je comprends mal.