Script afficher / cacher une Div

T3X
Invité n'ayant pas de compte PHPfrance

03 févr. 2019, 17:34

Bonjour !

Je viens demander de l'aide aujourd'hui sur un script !
j'ai plusieurs div à afficher et cacher et ce script :

Code : Tout sélectionner

<script type="text/javascript"> function toggle_div(bouton, id) { // On déclare la fonction toggle_div qui prend en param le bouton et un id var div = document.getElementById(id); // On récupère le div ciblé grâce à l'id if(div.style.display=="none") { // Si le div est masqué... div.style.display = "none"; // ... on le masque... div.style.display = "block"; // ... on l'affiche... } else { // S'il est visible... div.style.display = "none"; // ... on le masque... } } </script>
fonctionne très bien en rajoutant

Code : Tout sélectionner

onclick="toggle_div(this,'la_div');" OnMouseOver="this.style.cursor='pointer';"
cependant il se contente d'afficher et de cacher les div mais quand je clique sur plusieurs boutons, toutes les divs en question s'affichent.
J'aimerais que seule celle pour laquelle je clique sur le bouton ne s'ouvre, c'est à dire que celle déjà ouverte se ferment.

Une idée de modification à faire sur mon script ?

Merci les copains ! :D

T3X
Invité n'ayant pas de compte PHPfrance

03 févr. 2019, 17:35

Je me suis trompé sur le code du script c'est :

Code : Tout sélectionner

<script type="text/javascript"> function toggle_div(bouton, id) { // On déclare la fonction toggle_div qui prend en param le bouton et un id var div = document.getElementById(id); // On récupère le div ciblé grâce à l'id if(div.style.display=="none") { // Si le div est masqué... div.style.display = "block"; // ... on l'affiche... } else { // S'il est visible... div.style.display = "none"; // ... on le masque... } } </script>

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 8177 Messages

03 févr. 2019, 18:13

Je déplace le sujet dans le forum Javascript.
Quand tout le reste a échoué, lisez le mode d'emploi...

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 8177 Messages

03 févr. 2019, 18:16

Déjà je changerais le nom de la variable "div" pour quelque chose de plus personnalisé que le nom de la balise car ça peut provoquer des confusions.

Et sinon quels sont les id de tes div ? Tu es sûr qu'ils sont bien différents ?
Quand tout le reste a échoué, lisez le mode d'emploi...

T3X
Invité n'ayant pas de compte PHPfrance

03 févr. 2019, 18:34

Chaque div a un id et un nom différent !
J'ai marquer "la_div" pour que ce soit sobre pour le forum :D