IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Afficher/Masquer des Div


Sujet :

JavaScript

  1. #1
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 378
    Points : 5 731
    Points
    5 731
    Billets dans le blog
    1
    Par défaut Afficher/Masquer des Div
    Bonjour,

    mon objectif est très voisin de cette discussion : Masquer/ démasquer des Div avec JavaScript

    En gros, j'ai 2 div et 2 textes et si l'on clique sur l'un d'eux, ça affiche le div correspondant et masque l'autre et j'ai cherché à utiliser ton code du post #2 Jérôme.
    Sauf que je renomme les id vu que les noms d'origine n'ont pas de sens pour moi, et ça ne veut plus marcher (quand je clique, y a rien qui s'affiche).
    Quel est mon bug ?

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <a onclick="showdiv('creer'); " href="#">créer album</a>
    <a onclick="showdiv('effacer'); " href="#">effacer album</a>
     
    <div  class="divTexte"id="creer">
        creer
    </div>
     
    <div class="divTexte" id="effacer">
    effacer
    </div>

    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
     .divTexte { display: none; }

    Code js : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <script type="text/javascript">
    function showdiv(id) {
      var divTextes = document.querySelectorAll('.divTexte');
      for (var i = 0, n = divTextes.length; i < n; i++) {
        divTextes[i].style.display = 'none';
      }
      document.getElementById(id).style.display = 'block';
    }
     
    </script>
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour MLaurent,

    1- ton code fonctionne correctement tel quel.

    Vérifie que tu n'as pas d'autres <div> avec les mêmes id.
    Car un id DOIT être UNIQUE.


    2-Cela dit, j'utiliserais plutôt des <button> :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <button type="button" onclick="showdiv('creer'); ">créer album</button>
    <button type="button" onclick="showdiv('effacer'); ">effacer album</button>

    Sinon, il faut ajouter return false; (pour désactiver le lien <a>) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <a onclick="showdiv('creer'); return false;" href="#">créer album</a>
    <a onclick="showdiv('effacer'); return false;" href="#">effacer album</a>

  3. #3
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 378
    Points : 5 731
    Points
    5 731
    Billets dans le blog
    1
    Par défaut
    Perdu car ligne 4 du html, il manquait un espace :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <button type="button" onclick="showdiv('creer'); ">créer album</button>
    <button type="button" onclick="showdiv('effacer'); ">effacer album</button>
     
    <div  class="divTexte" id="creer">
        creer
    </div>
     
    <div class="divTexte" id="effacer">
    effacer
    </div>
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. afficher masquer des divs
    Par chris801 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 13/09/2011, 14h42
  2. Afficher/Masquer des div
    Par chris801 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 21/02/2011, 13h47
  3. Afficher / Masquer des div
    Par spawns dans le forum Général JavaScript
    Réponses: 16
    Dernier message: 20/11/2008, 15h41
  4. Afficher / Masquer des DIV
    Par Bounty59 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 17/01/2007, 10h33
  5. Afficher / masquer des div
    Par Galaad dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 28/08/2006, 21h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo