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 09/02/2012, 16h47   #1
Invité de passage
 
Inscription : décembre 2011
Messages : 14
Détails du profil
Informations forums :
Inscription : décembre 2011
Messages : 14
Points : 0
Points : 0
Par défaut Div draggable et z-index

Bonjour,

J'ai 3 div déplaçables. J'aimerai que lorsque l'on en déplace une sur une autre, celle qui se déplace soit au premier plan systématiquement.

J'ai utilisé Jquery pour le code suivant:


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
 
$(function() {
 
	$( "#date" ).draggable({ 
		containment: "#map", 
		scroll: false,
		handle: ".bouge",
		stack: "#date" 
	});				
 
	$( "#choixindice" ).draggable({ 
		containment: "#map", 
		scroll: false,
		handle: ".bouge",
		stack: "#choixindice" 
	});							
 
	$( "#legende" ).draggable({ 
		containment: "#map", 
		scroll: false,
		stack: "#legende" 
	});	
 
});

Le problème est que ça marche (avec stack)... mais au bout de la 3ème fois ! Je m'explique: il faut déplacer 3 fois une div avant qu'elle veuille bien passer un premier plan: les coups d'avant, elle se déplace derrière les autres. Et je n'ai aucune idée du pourquoi ce cet effet retardé.

Je précise qu'au départ (dans le CSS), les 3 div ont le même z-index.

Une idée pour que ça marche directement ?
Catalyst est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 23h42   #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

Sur la démonstration, l'option "stack" semble efficace (http://jqueryui.com/demos/draggable/#visual-feedback), mais je vois qu'elle s'applique à un groupe de divisions draggable. Il faudrait disposer de votre code (HTML, CSS, jQuery) pour faire un test réaliste.
__________________

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 00
Vieux 10/02/2012, 11h31   #3
Invité de passage
 
Inscription : décembre 2011
Messages : 14
Détails du profil
Informations forums :
Inscription : décembre 2011
Messages : 14
Points : 0
Points : 0
Bon j'ai résolu mon problème, mais sans vraiment en comprendre la raison.

Au lieu d'affecter l'option "stack" à chaque élément séparément, je leur ai attribué une classe ("stack" pour être original ) et j'ai rajouté la ligne suivante, tirée du code d'exemple de jquery ui:

Code :
1
2
 
$( ".stack" ).draggable({ stack: ".stack" });
Au final, voilà à quoi ressemble mon code:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
$(function() {
			$( "#date" ).draggable({ 
				containment: "#map", 
				scroll: false,
				handle: ".bouge",
			});
			$( "#choixindice" ).draggable({ 
				containment: "#map", 
				scroll: false,
				handle: ".bouge",
			});				
			$( "#legende" ).draggable({ 
				containment: "#map", 
				scroll: false, 
			});
			$( ".stack" ).draggable({ stack: ".stack" });
        });
Catalyst est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h38.


 
 
 
 
Partenaires

Hébergement Web