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 du contenu seulement sur click


Sujet :

JavaScript

  1. #1
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    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 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut afficher du contenu seulement sur click
    Bonjour,

    ce que je voudrais : on a une liste d'items ; comme ça :
    User Centric
    OCP Processes
    Function Skills
    Transverse Activities
    Offer Creation Academy
    et si l'on clique sur l'un d'eux, ça affiche dessous du texte (qu'on peut ensuite réduire) ; comme ça (pour le 1er item) :
    User Centric
    ' 'test
    OCP Processes
    Function Skills
    Transverse Activities
    Offer Creation Academy
    Voilà ce que j'ai tenté (et qui ne marche pas !) :
    Code html+javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
        <script type="text/javascript">
    function expandtest(){
      targetElement="test";
      Item = document.getElementById(targetElement); 
      Item.style.display=(Item.offsetWidth == 0)?block:none; 
    }
    </script>
    ...
        <div><a href="#" onclick="expandtest">User Centric</a>
          <div id="test" style={display:none;}>test</div>
        </div>
        <div>OCP Processes</div>
        <div>Function Skills</div>
        <div>Transverse Activities</div>
        <div>Offer Creation Academy</div>

    Comment faire marcher ça ?

  2. #2
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    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 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut
    Ca y est ; ça marche (j'étais pas loin) :
    Code html+javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
      <script type="text/javascript">
    function expandtest(){
      targetElement="test";
      Item = document.getElementById(targetElement); 
      Item.style.display=(Item.offsetWidth == 0)?"block":"none"; 
    }
    </script>
    ...
        <div><a href="#" onclick="expandtest">User Centric</a>
          <div id="test" style={display:none;}>test</div>
        </div>
        <div>OCP Processes</div>
        <div>Function Skills</div>
        <div>Transverse Activities</div>
        <div>Offer Creation Academy</div>

  3. #3
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    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 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut
    Je réessaye exactement le même code ce soir, et il marche plus .
    En commentant, j'ai vu que c'est la ligne 5 qui provoque le message "erreur sur la page".
    D'où ça peut venir ?

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 098
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 098
    Points : 44 879
    Points
    44 879
    Par défaut
    Bonjour,
    pour éviter toutes mauvaises surprises il est TRES FORTEMENT recommandé de déclarer les variables avec le mot clé var
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function expandtest(){
      var targetElement="test";
      var Item = document.getElementById(targetElement); 
      Item.style.display=(Item.offsetWidth == 0)?"block":"none"; 
    }
    Une question au passage, tu sors d'où la déclaration du style inline comme celle ci
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <div id="test" style={display:none;}>test</div>

    Autre chose toujours au passage
    Citation Envoyé par laurentSc
    Ca y est ; ça marche (j'étais pas loin) :
    même avec cette façon de déclarer l'action sur le onclick...
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <div><a href="#" onclick="expandtest">User Centric</a>

    Citation Envoyé par laurentSc
    D'où ça peut venir ?
    difficile à dire

  5. #5
    Membre émérite
    Avatar de Kaamo
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 165
    Points : 2 778
    Points
    2 778
    Par défaut
    Bonjour Laurent,

    Pour l'utilité du mot var, je t'invite à lire ceci

  6. #6
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    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 470
    Points : 5 830
    Points
    5 830
    Billets dans le blog
    1
    Par défaut
    Merci pour vos remarques, et cette fois, c'est bon

    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
    17
    18
    19
    20
    21
     <!DOCTYPE html>
     <html>
     <head>
     <script type="text/javascript">
    function expandtest(){
      var targetElement="test";
      var Item = document.getElementById(targetElement); 
      Item.style.display=(Item.offsetWidth == 0)?"block":"none"; 
    }
    </script>
    </head>
    <body>
        <div><a href="#" onclick="expandtest()">User Centric</a>
          <div id="test" style="display:none;">test</div>
        </div>
        <div>OCP Processes</div>
        <div>Function Skills</div>
        <div>Transverse Activities</div>
        <div>Offer Creation Academy</div>
    	</body>
    	</html>

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

Discussions similaires

  1. Afficher un contenu identique sur un grand nombre de pages
    Par encoremoi21258 dans le forum Langage
    Réponses: 2
    Dernier message: 30/05/2015, 21h30
  2. Réponses: 2
    Dernier message: 21/01/2011, 14h45
  3. [VBA-E] Dbl Click sur une case pour afficher le contenu d'un USERFORM
    Par dado91400 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 14/03/2007, 10h41
  4. Réponses: 5
    Dernier message: 23/06/2006, 09h50
  5. Afficher un menu contextuelle sur le click droit d'une image
    Par PrinceMaster77 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/01/2006, 12h19

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