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 :

Ouvrir un div avec ID (classe masquée) [UI]


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de fazpedro
    Homme Profil pro
    Inscrit en
    Août 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 506
    Par défaut Ouvrir un div avec ID (classe masquée)
    Bonjour,

    je souhaite ouvrir au clic un DIV caché, mais dans une liste de plusieurs DIV avec un ID différent à chaque DIV.
    on affiche bien le bon ID avec l'alerte mais le DIV ne s'ouvre pas

    Merci d'avance.

    Jquery :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <script type="text/javascript">
    $(document).ready(function() {
    $(".info_affiche").click(function(){
    	var this_id;
    	this_id = this.id;
    	alert("#plus_infos"+this_id); //  OK this_id = #plus_infosaffiche_infos1 ou plus_infosaffiche_infos2 sur le deuxième 
    	$("#plus_infosaffiche_infos"+this_id).show();
    });
    });
    </script>
    HTML :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <style>
    .info_detail{display:none;}
    </style>
    <a class="info_affiche" href="#" id="affiche_infos1">TEST DE DIV 1</a>
    <div class="info_detail" id="plus_infosaffiche_infos1">
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec venenatis enim id vestibulum rhoncus.
    Fusce leo orci, hendrerit vel nulla et, laoreet varius lorem. Curabitur tincidunt condimentum nibh vitae egestas.
    </div>							
    <a class="info_affiche" href="#"id="affiche_infos2">TEST DE DIV 2</a>
    <div class="info_detail" id="plus_infosaffiche_infos2">
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec venenatis enim id vestibulum rhoncus.
    Fusce leo orci, hendrerit vel nulla et, laoreet varius lorem. Curabitur tincidunt condimentum nibh vitae egestas.
    </div>

  2. #2
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 519
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 519
    Par défaut
    tu peux le faire en deux lignes et SANS L'UTILISATION DES ID
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $(document).ready(function() {
    $(".info_affiche").click(function(){
    	var index=$(this).index(".info_affiche");//index de <a> sur lequel on a cliqué, par rapport a la classe ".info_affiche" .
      $(".info_detail").eq(index).show();//affichage de la div ayant la classe ".info_detail" en utilisant index.
    });
    });

  3. #3
    Membre éclairé Avatar de fazpedro
    Homme Profil pro
    Inscrit en
    Août 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 506
    Par défaut
    Excellent Toufik83
    Merci beaucoup, cela fonctionne bien !

    J'en ai profité pour rajouter un code de fermeture du DIV...

    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
    28
    <script type="text/javascript">
    $(document).ready(function() {
    $(".info_affiche").click(function(){
    	var index=$(this).index(".info_affiche");	//index de <a> sur lequel on a cliqué, par rapport a la classe ".info_affiche" .
    	$(".info_detail").eq(index).show();			//affichage de la div ayant la classe ".info_detail" en utilisant index.
    	});
     
    	$(".masque_infos").click(function(){ // pour masquer le DIV
    	var index=$(this).index(".masque_infos");	//index de <a> sur lequel on a cliqué, par rapport a la classe ".info_affiche" .
    	$(".info_detail").eq(index).hide();			//affichage de la div ayant la classe ".info_detail" en utilisant index.
    	});
    });
    </script>
    <style>
    .info_detail{display:none;}
    </style>
    <a class="info_affiche" href="#" id="affiche_infos1">TEST DE DIV 1</a>
    <div class="info_detail" id="plus_infosaffiche_infos1">
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec venenatis enim id vestibulum rhoncus.
    Fusce leo orci, hendrerit vel nulla et, laoreet varius lorem. Curabitur tincidunt condimentum nibh vitae egestas.
    <a class="masque_infos" href="#" id="masque_infos1"> Fermer le DIV 1 </a>
    </div>							
    <a class="info_affiche" href="#"id="affiche_infos2">TEST DE DIV 2</a>
    <div class="info_detail" id="plus_infosaffiche_infos2">
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec venenatis enim id vestibulum rhoncus.
    Fusce leo orci, hendrerit vel nulla et, laoreet varius lorem. Curabitur tincidunt condimentum nibh vitae egestas.
    <a class="masque_infos" href="#" id="masque_infos2">  Fermer le DIV 2 </a>
    </div>

  4. #4
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 519
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 519
    Par défaut
    profite un peu des fonctions de jQuery, il existe $.slideToggle().
    au lieu de .show() et .hide(), tu peux directement faire comme suite :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $(".info_affiche").click(function(){
    	var index=$(this).index(".info_affiche");	
           $(".info_detail").eq(index).slideToggle();
    	});
    jQuery est très gentil

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

Discussions similaires

  1. Réponses: 14
    Dernier message: 03/02/2016, 14h19
  2. Ouvrir une div avec image au survol d'une autre div avec image
    Par fostraceur dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 31/01/2016, 21h06
  3. Filtrer des divs avec des class multiples
    Par Dae_mon dans le forum jQuery
    Réponses: 1
    Dernier message: 15/04/2013, 00h31
  4. [CKEditor] Bouton créant une div avec une class personnelle
    Par Nowwis dans le forum Bibliothèques & Frameworks
    Réponses: 0
    Dernier message: 27/03/2011, 14h03
  5. ouvrir un fichier avec la classe Desktop
    Par Bloodista dans le forum Général Java
    Réponses: 2
    Dernier message: 23/04/2008, 17h32

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