Maison > interface Web > tutoriel CSS > Pourquoi mon bouton Afficher/Masquer nécessite-t-il un double-clic dès la première tentative ?

Pourquoi mon bouton Afficher/Masquer nécessite-t-il un double-clic dès la première tentative ?

Linda Hamilton
Libérer: 2024-12-23 16:00:19
original
738 Les gens l'ont consulté

Why Does My Show/Hide Button Require a Double-Click on the First Attempt?

Dépannage du problème de double-clic pour le bouton Afficher/Masquer

Dans votre code pour un bouton Afficher/Masquer, vous avez mentionné avoir rencontré un problème inhabituel où l'utilisateur doit double- cliquez sur le bouton lors de la première tentative, même si l'élément est déjà masqué. Pour résoudre ce problème, explorons la cause possible et proposons une solution.

Le code actuel utilise la propriété style.display pour basculer la visibilité de l'élément. La propriété style.display peut être définie sur « aucun » ou « block ». Lorsque l'élément est créé pour la première fois, sa propriété style.display peut être vide, ce qui est interprété comme « aucun » par JavaScript. Par conséquent, lorsque vous cliquez pour la première fois sur le bouton, il semble double-cliquer car il masque d'abord l'élément (car il vérifie x.style.display === "none"), puis l'affiche (car la condition est maintenant faux).

Pour résoudre ce problème et permettre à l'élément d'être affiché au premier clic, vous pouvez vérifier si x.style.display est soit "aucun" ou une chaîne vide (""). Voici le code modifié :

function showhidemenu() {
  var x = document.getElementById("menu");
  if (x.style.display === "none" || x.style.display === "") {
    x.style.display = "block";
  } else {
    x.style.display = "none";
  }
}
Copier après la connexion

Cette condition mise à jour garantira qu'au premier clic, lorsque x.style.display est vide, l'élément s'affichera correctement sans nécessiter de double-clic.

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