


Comment faire la distinction entre la fermeture d'un onglet de navigateur et la fermeture du navigateur entier à l'aide de JavaScript?
JavaScript distingue la fermeture de l'onglet du navigateur et la fermeture complète du navigateur
Dans l'utilisation quotidienne de la navigation multi-gabarits, les utilisateurs peuvent avoir besoin de fermer un seul onglet ou l'ensemble du navigateur. Dans certains scénarios d'application, par exemple, une action spécifique est requise lorsque le navigateur est complètement fermé (tel que la compensation des informations de connexion), mais pas lors de la fermeture d'un seul onglet. Cet article explorera comment utiliser JavaScript pour distinguer ces deux situations et fournir des solutions correspondantes.
Description du problème
Supposons que l'application Web que nous avons développée s'exécute sur le navigateur Chrome sur le système Windows. L'exigence consiste à effacer les informations de connexion lorsque l'utilisateur ferme tout le navigateur, tout en gardant les informations de connexion inchangées lors de la fermeture d'un seul onglet. Comment implémenter cette fonction?
Solution
Nous pouvons utiliser l'objet sessionStorage
de HTML5 pour résoudre ce problème. sessionStorage
permet de stocker les données de paire de valeurs de clé dans la même session. Lors de la fermeture du navigateur, les données de sessionStorage
seront effacées, tandis que la fermeture d'un seul onglet n'affectera pas les données sessionStorage
des autres onglets.
Les étapes de mise en œuvre spécifiques sont les suivantes:
-
Écoutez l'événement de fermeture du navigateur: utilisez l'événement
beforeunload
pour écouter le fonctionnement de fermeture ou de fermeture du navigateur.window.addeventListener ('avant en charge', fonction (e) { // Ajouter du code pour effacer les informations de connexion ici, mais il convient de noter que l'exécution directement ici peut également conduire à une compensation lors de la fermeture de l'onglet. });
-
Utilisez SessionStorage pour distinguer le comportement de clôture: lorsque chaque onglet est chargé, définissez un élément
sessionStorage
et vérifiez si l'élément existe lorsqu'il est fermé. S'il existe, cela signifie que la page d'onglet est fermée; S'il n'existe pas, cela signifie que le navigateur entier est fermé.// Définir ses sessionStorage lorsque la page se charge window.addeventListener ('Load', function () { SessionStorage.SetItem ('Tabopen', 'True'); }); // Vérifiez SessionStorage lorsqu'il est fermé window.addeventListener ('avant en charge', fonction (e) { if (! SessionStorage.getItem ('Tabopen')) { // Effacer les informations de connexion clearLoginInfo (); } autre { // Supprimer l'élément SessionStorage SessionStorage.RemoveItem ('tabopen'); } }); fonction clearlogininfo () { // Ajouter le code pour effacer les informations de connexion ici à Console.log («Effacer des informations de connexion ...»); }
Grâce à la méthode ci-dessus, nous pouvons distinguer efficacement entre la fermeture de la page d'onglet et la fermeture du navigateur, et effectuer le fonctionnement de l'effacement des informations de connexion lorsque le navigateur est complètement fermé, tandis que cette opération ne sera pas effectuée lors de la fermeture d'une seule page d'onglet. Il convient de noter que l'événement beforeunload
peut être intercepté ou retardé par le navigateur, en fonction de l'implémentation spécifique du navigateur et des paramètres utilisateur. Pour améliorer la fiabilité, d'autres technologies, telles que la gestion de session côté serveur, peuvent être prises en compte.
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!

Les rôles de HTML, CSS et JavaScript dans le développement Web sont: 1. HTML est utilisé pour créer une structure de page Web; 2. CSS est utilisé pour embellir l'apparence des pages Web; 3. JavaScript est utilisé pour obtenir une interaction dynamique. Grâce à des balises, des styles et des scripts, ces trois créent ensemble les fonctions principales des pages Web modernes.

La définition des attributs Lang d'une balise est une étape clé dans l'optimisation de l'accessibilité Web et du référencement. 1) Définissez l'attribut Lang dans la balise, comme. 2) Dans le contenu multilingue, définissez les attributs Lang pour différentes parties de langue, telles que. 3) Utilisez des codes linguistiques conformes aux normes ISO639-1, telles que "EN", "FR", "ZH", etc. La définition correcte de l'attribut Lang peut améliorer l'accessibilité des pages Web et des classements de moteur de recherche.

HtmlattributesAsAntinelEntialFormenhancingWelements's-ctionality et appareil.EyyAddInformationTodeFineBehavior, Apparence et Interaction, faisant des websites interactifs, réactifs, et visuellement.

TOCRÉATEALISTINHTML, USEFORDORDEDRILST ANDFORODEREDLISTS: 1) ForunDorDedlists, webrotemsinandUseForEachItem, Renderingasabulletedlist.2) FororderDlists, useAndFornumberredlists, personnalisable withthepeTypeTrributeforDiferentNumberStyles.

HTML est utilisé pour créer des sites Web avec une structure claire. 1) Utilisez des balises telles que et définissez la structure du site Web. 2) Les exemples montrent la structure des blogs et des sites Web de commerce électronique. 3) Évitez les erreurs courantes telles que la nidification incorrecte des étiquettes. 4) Optimiser les performances en réduisant les demandes HTTP et en utilisant des balises sémantiques.

ToinsertanimageIntoanhtmlpage, usethetagwithsrcandalttributes.1) usealttextforaccessibility and

L'objectif principal de HTML est de permettre au navigateur de comprendre et d'afficher le contenu Web. 1. HTML définit la structure et le contenu de la page Web via des balises, telles que, à, etc. 2. HTML5 améliore la prise en charge multimédia et les introductions et les balises. 3.HTML fournit des éléments de formulaire pour prendre en charge l'interaction utilisateur. 4. Optimisation du code HTML peut améliorer les performances de la page Web, telles que la réduction des demandes HTTP et la compression de HTML.

HtmltagsaressentialforwebDevelopmentaSheystructureAnDenHanceWebpages.1) TheyDefiLlayout, Semantics et Interactivité.2) SemanctagSimproveaccessibilistibilitySeo.3) correct usUsoftagscanoptimizeperformanceAndensurecross-browercompatibilité.


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Navigateur d'examen sécurisé
Safe Exam Browser est un environnement de navigation sécurisé permettant de passer des examens en ligne en toute sécurité. Ce logiciel transforme n'importe quel ordinateur en poste de travail sécurisé. Il contrôle l'accès à n'importe quel utilitaire et empêche les étudiants d'utiliser des ressources non autorisées.

Dreamweaver Mac
Outils de développement Web visuel

Listes Sec
SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.

ZendStudio 13.5.1 Mac
Puissant environnement de développement intégré PHP

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)
