Maison > interface Web > tutoriel CSS > le corps du texte

Comment empêcher le menu pliable de Bootstrap de rester ouvert après avoir cliqué sur des liens ?

Mary-Kate Olsen
Libérer: 2024-11-21 07:14:14
original
262 Les gens l'ont consulté

How to Prevent Bootstrap's Collapsible Menu from Staying Open After Clicking Links?

Réduire le menu de démarrage : résoudre le problème persistant du panneau

Dans le domaine de la conception Web réactive, le menu de navigation pliable de Bootstrap a été un pilier. Cependant, un problème particulier peut survenir : alors que le menu se réduit gracieusement sur des écrans plus petits, cliquer sur les liens du menu ne parvient pas à le rétracter. Cela peut laisser les utilisateurs bloqués dans un menu étendu, entravant une navigation fluide.

Dévoilement de la solution : exploiter la gestion des événements de JavaScript

La clé pour résoudre ce dilemme réside dans la propagation des événements. et délégation d’événements ciblés. En écoutant les clics sur le corps du document et en vérifiant si l'élément cible est une balise d'ancrage, nous pouvons réduire le menu par programme uniquement lorsqu'un utilisateur en a l'intention. Ceci peut être réalisé avec élégance grâce au code JavaScript suivant :

$(document).on('click', '.navbar-collapse.in', function(e) {
    if( $(e.target).is('a') ) {
        $(this).collapse('hide');
    }
});
Copier après la connexion

Résoudre les interférences potentielles des sous-menus

Lorsque vous travaillez avec des sous-menus, le code susmentionné peut rencontrer un piège subtil. Si vous cliquez sur l'élément bascule d'un sous-menu, le menu parent peut s'effondrer par inadvertance. Pour éviter ce comportement involontaire, une version affinée du code est requise :

$(document).on('click', '.navbar-collapse.in', function(e) {
    if( $(e.target).is('a:not(".dropdown-toggle")') ) {
        $(this).collapse('hide');
    }
});
Copier après la connexion

En excluant les éléments déroulants de la logique des événements, nous garantissons que cliquer sur les boutons du sous-menu ne fermera pas prématurément le menu principal.

Permettre une navigation dynamique

La beauté de cette solution réside dans sa nature dynamique. L'écouteur d'événements est lié à l'intégralité du document, donc même si des liens de menu sont ajoutés ou supprimés, le comportement de réduction restera intact. Cette adaptabilité garantit une navigation transparente sur les pages Web statiques et adaptables.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal