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 :

lien avec drag&drop


Sujet :

JavaScript

  1. #21
    Membre confirmé Avatar de nadox
    Homme Profil pro
    Développeur
    Inscrit en
    Février 2010
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2010
    Messages : 360
    Points : 551
    Points
    551
    Par défaut
    Ben c'est normal si tu remet le z-index plus bas sur le drop...
    Pour avoir l'effet que tu désire, tu peux utiliser une variable qui stockera le dernier z-index, que tu incrémentera à chaque fois.
    Ainsi la dernière image utilisée aura le z-index le plus haut.

  2. #22
    Membre régulier Avatar de Billy KiT
    Inscrit en
    Mars 2011
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 66
    Points : 73
    Points
    73
    Par défaut
    oups j'avais pas vu
    Pour le z-index, je pense que c'est normal, puisque la dernière image doit avoir le niveau le plus haut.
    Chaque fois que tu prends une image, celle-ci doit avoir (le plus haut z-Index)+1.
    La suivante, (z-Index+1)+1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this.targetobj.style.zIndex=z++;
    Sachant que d'après http://softwareas.com/whats-the-maximum-z-index
    le z-index peut monter jusqu'à 2 milliards, ça laisse de la marge.
    Sinon il faudrait décrémenter le z-index de tous les autres éléments.

    Désolé nadox, j'avais pas vu ta réponse ! Décidemment ...

  3. #23
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 40
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par nadox Voir le message
    Pour avoir l'effet que tu désire, tu peux utiliser une variable qui stockera le dernier z-index, que tu incrémentera à chaque fois.
    Ainsi la dernière image utilisée aura le z-index le plus haut.
    et comment déclarer cette variable ? (désolé je suis un peu perdu)

  4. #24
    Membre régulier Avatar de Billy KiT
    Inscrit en
    Mars 2011
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 66
    Points : 73
    Points
    73
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var z=1; // ou plus si les z-index ont été affectés dans les styles
    variable ordinaire au début du script.
    Ensuite incrementation dans la fonction drag, donc sur le mousedown

  5. #25
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 40
    Points : 10
    Points
    10
    Par défaut
    Parfait! ça marche!! merci beaucoup d'avoir pris le temps de me répondre !!

    pour info, voici mon code :

    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
     
    var z=1
    var dragobject={
    	x:0, y:0, offsetx:null,offsety:null,targetobj:null,dragapproved:0,
    	initialize:function(){
    		document.onmousedown=this.drag
    		document.onmouseup=function(){this.dragapproved=0; this.targetobj.style.zIndex=z++;}}
     
    	,drag:function(e){
    		var evtobj=window.event? window.event:e
    		this.targetobj=window.event? event.srcElement:e.target
    		while (this.targetobj.className!="drag" && this.targetobj.tagName!="BODY") this.targetobj=this.targetobj.parentNode
    		if (this.targetobj.className=="drag"){
    			this.dragapproved=1;
    			this.targetobj.style.zIndex='999'
    			if (isNaN(parseInt(this.targetobj.style.left))){this.targetobj.style.left=0}
    			if (isNaN(parseInt(this.targetobj.style.top))){this.targetobj.style.top=0}
    			this.offsetx=parseInt(this.targetobj.style.left)
    			this.offsety=parseInt(this.targetobj.style.top)
    			this.x=evtobj.clientX
    			this.y=evtobj.clientY
    			if (evtobj.preventDefault) evtobj.preventDefault()
    			document.onmousemove=dragobject.moveit}}

  6. #26
    Membre régulier Avatar de Billy KiT
    Inscrit en
    Mars 2011
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 66
    Points : 73
    Points
    73
    Par défaut
    Attention, cela ne marchera que jusqu'à 1000 déplacements.
    Enlèves plutôt la ligne zIndex=z++ du onmouseup et mets la à la place de
    la ligne zIndex=999
    et là ça fonctionnera jusqu'à 2 milliards .
    Avant de se faire tirer l'oreille par les hauts responsables, oublies pas le "résolu".

  7. #27
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 40
    Points : 10
    Points
    10
    Par défaut
    ok merci

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. overflow vertical avec drag n drop
    Par cels dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 18/02/2012, 04h14
  2. update BDD avec Drag 'n Drop
    Par IceP42 dans le forum jQuery
    Réponses: 20
    Dernier message: 15/05/2009, 22h52
  3. problème avec drag and drop
    Par Nayra dans le forum Agents de placement/Fenêtres
    Réponses: 1
    Dernier message: 16/04/2009, 00h11

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