Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/10/2011, 21h42   #1
Membre régulier
 
Avatar de la_chouette
 
Inscription : avril 2010
Messages : 114
Détails du profil
Informations forums :
Inscription : avril 2010
Messages : 114
Points : 76
Points : 76
Par défaut Ajouter/supprimer une class

Bonjour,

J'essaie de remplacer une class sur une balise h3 suivant l'état (afficher/masquer) d'un div qui la suit.

Exemple
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$(document).ready(function() {
	$(".features div").hide(); // Masque tout les div par défaut
 
	$(".features h3").addClass("expand"); // Ajoute la class expand aux balises H3
 
	$(".features h3").click(function() {
 
	$(".features div").slideUp(10);	// Si il y'a un div ouvert on le referme
 
	$(this).next(".features div").toggle(); // Ouvre le div suivant la balise H3
 
		// Vérifie l'état des div (afficher/masquer) et applique la class correspondante
		$(this).next(".features div").is(':hidden') ? $(this).removeClass("collapse").addClass("expand") : $(this).removeClass("expand").addClass("collapse");
	});
});
Ou une démo ici: http://jsfiddle.net/dA6ww/4/

Citation:
Les puces collapse et expand, si vous cliquez vous verrez quel ne reviennent pas à leurs états initial ...
merci d'avance pour votre aide ...

Cordialement
__________________
La vitesse de la lumière étant supérieure à celle du son, beaucoup de gens sont brillants jusqu'à ce qu'ils ouvrent leur bouche.
la_chouette est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/10/2011, 23h03   #2
Rédacteur
 
Avatar de danielhagnoul
 
Homme Daniel Hagnoul
Étudiant perpétuel
Inscription : février 2009
Messages : 3 221
Détails du profil
Informations personnelles :
Nom : Homme Daniel Hagnoul
Âge : 61
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant perpétuel
Secteur : Enseignement

Informations forums :
Inscription : février 2009
Messages : 3 221
Points : 6 767
Points : 6 767
Bonsoir

Code :
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
29
30
// les divisions enfants de la division ayant la classe features
var jObjDivs = $(".features").children("div");
 
// on les cache toutes
jObjDivs.hide();
 
$(".features")
	.children("h3") // tous les h3 enfants de
	.addClass("expand")
	.click(function(){
		// la division qui suit le h3 cliqué
	    var jObjDiv = $(this).next();
 
		// on si off et inversement
		jObjDiv.toggle();
 
		// pour toutes les div enfants
		jObjDivs.each(function(i, item){
			// on teste si la div traitée est celle qui suit le h3 cliqué
			if (item != jObjDiv[0]){
				// ce n'est pas elle
				$(item).hide();
				// $(item).prev() : on sélectionne le h3 qui précède cette div
				$(item).prev().removeClass("collapse").addClass("expand");
			} else {
				// c'est elle
				$(item).prev().removeClass("expand").addClass("collapse");
			}
		});
    });
__________________

FAQ jQuery

Mon cahier d’exercices sur jQuery & Co

Si un message vous a aidé ou vous semble pertinent, votez pour lui !
danielhagnoul est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h43.


 
 
 
 
Partenaires

Hébergement Web