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 :

affichage/masquage sur clic


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mai 2004
    Messages
    181
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 181
    Par défaut affichage/masquage sur clic
    bonjour

    j'ai un petit probleme sur une fonction. Je n'arrive pas à la modifier de sorte que lorsque je clik sur une nouvelle zone le block précédemment affichée disparais et laisse la place au nouveau

    la fonction est visible à
    http://reunion-rando.com/index.php?menu=crtign

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    function deplier(id){
    var cible = document.getElementById(id);
    if (cible.style.display == 'block') cible.style.display = 'none';
    else cible.style.display = 'block';
    }
    un des blocs à afficher
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <div id="block-01" align="justify" class="voir">
    <br><br><b>4401RT :</b> La possession, Le bois de Nefles, L'etang, Boucan Canot, Saint Gilles les Bains, l'Hermitage les Bains, la Saline les Bains, Saint Gilles les hauts, la Saline les hauts, Trois Bassins, Petite France, Piton Maïdo
    </div>

    merci d'avance pour le coup de pouce

  2. #2
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    Salut,

    Tu peux soit remettre tous les blocs à display none avant d'afficher le bloc

    soit tu peux mémoriser le dernier bloc affiché dans une variable, quelque
    chose dans ce genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    var old;
    function deplier(id){
      if(old) document.getElementById(old).style.display = 'none';
      old = cible;
      var cible = document.getElementById(id);
      if (cible.style.display == 'block') cible.style.display = 'none';
      else cible.style.display = 'block';
    }

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2004
    Messages
    181
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 181
    Par défaut
    merci pour ta réponse

    mais j'ai toujours le même effet un clic sur un lien, le bloc_1 apparais un autre clic dessus il disparais

    si je clic sur un autre lien le bloc_2 s'affiche mais le bloc_1 reste affiché.

  4. #4
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    Tu peux poster une version minimaliste avec le code html et javascript stp ?

  5. #5
    Membre confirmé
    Inscrit en
    Mai 2004
    Messages
    181
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 181
    Par défaut
    pour le code html
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    <map name="crtign">
    <area shape="rect" coords="14,6,134,154" href="#" onclick="deplier('block-01');">
    .
    .
    <area shape="rect" coords="240,176,377,329" href="#" onclick="deplier('block-06');">
    </map>
     
    <div id="block-01" align="justify" class="voir">
    bla bla bla bla bla bla bla bla bla 
    </div>
    .
    .
    <div id="block-06" align="justify" class="voir">
    bla bla bla bla bla bla bla bla bla 
    </div>
    pour le code javascript
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    function deplier(id){  
    var old;
      if(old) document.getElementById(old).style.display = 'none';
      old = cible;
      var cible = document.getElementById(id);
      if (cible.style.display == 'block') cible.style.display = 'none';
      else cible.style.display = 'block';
    }
    pour le code css
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    .voir {width: 393px; display: none; text-align: justify; background-color: #FFFF99}

  6. #6
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    Arg, mea culpa, j'ai fait une grossière erreur, essaie ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function deplier(id){  
      var old;
      if(old) document.getElementById(old).style.display = 'none';
      old = id;
      var cible = document.getElementById(id);
      if (cible.style.display == 'block') cible.style.display = 'none';
      else cible.style.display = 'block';
    }

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

Discussions similaires

  1. Affichage DIV au clic sur image
    Par Nova92 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 31/12/2011, 14h37
  2. Affichage DIV au clic sur image
    Par Nova92 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 31/12/2011, 14h37
  3. affichage text sur clic bouton + condition
    Par gazelle dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/02/2009, 16h36
  4. [VB6] [MSHFlexGrid] Tri sur clic dans la première ligne
    Par degreste dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 06/03/2003, 00h42
  5. Evènement sur clic droit !?
    Par soccersoft dans le forum Composants VCL
    Réponses: 6
    Dernier message: 26/12/2002, 21h39

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