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

jQuery Discussion :

afficher des blocs cachés avec un bouton


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 42
    Par défaut afficher des blocs cachés avec un bouton
    Bonjour à tous,

    Chose simple en JS mais en Jquery, je tourne en rond , pff:

    Je cherche à parcourir chaque div cachée et à chaque pression sur le bouton afficher la div 1 puis la div 2, etc... donc en boucle. J'ai fais ceci..mais là je sèche.."alert" est proche de ce que je souhaite.
    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
    22
    23
    24
    25
    26
    27
     
    <script type="text/javascript" charset="utf-8">
    $().ready( function () {
    	$('#q_containers .q_container').hide();
    	$('button').click( function (){
    		$('.q_container').each (function(i)	  {
    			alert("div numero :" + i)
    			$(this).eq().show();
    		});	
    	}); 
    });//FIN Document.ready 
     
     
    </script>
    </head>
     
     
    <button>bouton</button>
     
    <div id="q_containers" style="overflow:hidden;">		  
     
     <div class="q_container" id="q_container_1">1111</div>
     <div class="q_container" id="q_container_2">2222</div>
     <div class="q_container" id="q_container_3">3333</div>
     <div class="q_container" id="q_container_3">4444</div>
     
    </div>
    Merci de votre aide

  2. #2
    Membre éclairé Avatar de coach759
    Profil pro
    Webmaster
    Inscrit en
    Août 2009
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Août 2009
    Messages : 79
    Par défaut
    Bonjour,

    Il suffit que tu déclare un "compteur" de click, et que tu affiche le div correspondant, comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $().ready( function () {
        $('#q_containers .q_container').hide();
        var cpt=0;
        $('button').click( function (){
            cpt++;
            $('#q_container_'+cpt).show();
        });	
    });
    Et le tour est joué.
    N'hésite pas si tu as des problèmes ou des questions

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 42
    Par défaut
    bonjour,

    Merci de ton aide,

    J'ai omis un detail : chaque div affiché remplace l'autre, comme une sorte de carroussel par exemple.

    Avec ton code, j'affiche bien le contenu de la premiere DIV. en recliquant sur le bouton, le contenu de la deuxieme DIV ne s'affiche pas..

    Merci encore

  4. #4
    Membre éclairé Avatar de coach759
    Profil pro
    Webmaster
    Inscrit en
    Août 2009
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Août 2009
    Messages : 79
    Par défaut
    Tu ajoutes deux petites ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     $('button').click( function (){
    	if(cpt>=$('#q_containers .q_container').length)cpt=0;
    	$('#q_containers .q_container').hide();
            cpt++;
            $('#q_container_'+cpt).show();	
        });
    Comme ça, tu as l'effet "carroussel" recherché

  5. #5
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Par défaut
    Bonjour,

    il y a deux erreurs dans votre code.

    La première, c'est :

    et non

    Ensuite,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $("button").click(function() {
        $(".q_container:hidden:eq(0)").show();
    });
    ++
    C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

    Installation de Code::Blocks sous Debian à partir de Nightly Builds

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 42
    Par défaut
    Avec ces 2 lignes en +rien ne s'affiche en appuyant sur le bouton.

    Tu fermes ton "if"où ?
    Il faut peut être un "else" à la suite aussi ?

    j'ai fais plusieurs tests mais rien..désolé.

    Merci

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 42
    Par défaut
    Merci à tous les 2,

    Arnaud F., ton code marche parfaitement, l'affichage de chaque div se fait les unes en dessous des autres..je cherche juste replacer chaque DIV au même emplacement, c-à-d àla palce de la div1..a prioir il fuat utiliser la fonction append ou html ..Merci

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

Discussions similaires

  1. afficher des images miniatures avec scroll bar
    Par mappec dans le forum Flash
    Réponses: 0
    Dernier message: 09/08/2008, 00h11
  2. afficher des donnees argb avec direct3d
    Par d'Oursse dans le forum DirectX
    Réponses: 3
    Dernier message: 15/08/2007, 09h56
  3. afficher des donnees argb avec direct3d
    Par d'Oursse dans le forum Windows
    Réponses: 2
    Dernier message: 29/07/2007, 17h22
  4. [Debutant] Afficher des chaines unicodes avec println
    Par MichaelB dans le forum Langage
    Réponses: 2
    Dernier message: 10/01/2007, 19h39
  5. Afficher les fichiers cachés avec apache ?
    Par Michaël dans le forum Apache
    Réponses: 2
    Dernier message: 20/12/2004, 09h56

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