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 :

Drag & drop d'un DIV en JavaScript


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 4
    Points : 5
    Points
    5
    Par défaut Drag & drop d'un DIV en JavaScript
    Bonsoir

    Pour commencer, il faut dire que j'ai jamais vraiment fait de JavaScript ... donc ce que je fais est un peu à tatillon ! Dans le cas présent j'ai récupéré en grosse partie un script d'un site spécialisé ...

    Mon problème est le suivant : comme vous pouvez le voir sur http://www.zonehd.net/drag.php , on peut déplacer le div avec la souris. Vous l'avez sûrement remarqué, au premier mouvement, le div se décale tout seul ... ensuite plus de problème, il suit correctement le curseur !

    Voici le code source au cas où :

    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    <html>
    <style type="text/css">
    	.transparent {
    	top:100px;
    	left:100px;
    	background-color:#cccccc;
    	position:absolute;
    	width:200;
    	height:200;
    	cursor:move;
    	}
    	.textetransp {
    	color:#ffffff;
    	text-decoration:none;
    	filter: alpha(opacity=100);
    	opacity:1;
    	background-color:#336699;
    	}
    	</style>
    </html>
    <body>
    <script language="JavaScript1.2">
    <!--
     
    var ie=document.all;
    var nn6=document.getElementById&&!document.all;
     
    var isdrag=false;
    var x,y;
    var dobj;
     
    function movemouse(e)
    {
     
      if (isdrag)
      {
     	var X = tx - x;
     	var Y = ty - y;
    //alert(X+' '+Y);
    	dobj.style.left = nn6 ? e.clientX + X : event.clientX + X;
    	dobj.style.top  = nn6 ? e.clientY + Y : event.clientY + Y;
     
    	return false;
      }
     
    }
     
    function selectmouse(e) 
    {
      var fobj       = nn6 ? e.target : event.srcElement;
      var topelement = nn6 ? "HTML" : "BODY";
     
      while (fobj.tagName != topelement && fobj.className != "transparent")
      {
        fobj = nn6 ? fobj.parentNode : fobj.parentElement;
      }
     
      if (fobj.className=="transparent")
      {
        isdrag = true;
     
    	// objet à déplacer
        dobj = fobj;
    	// espacement gauche de l'objet
        tx = parseInt(dobj.style.left+0);
    	// espacement droit de l'objet
        ty = parseInt(dobj.style.top+0);
    	// position x de la souris
        x = nn6 ? e.clientX : event.clientX;
    	// position y de la souris
        y = nn6 ? e.clientY : event.clientY;
     
        document.onmousemove=movemouse;
     
        return false;
      }
    }
     
    document.onmousedown=selectmouse;
    document.onmouseup=new Function("isdrag=false");
     
    //-->
    </script>
    <div class="transparent" id="transp"><br />
    <font class="textetransp">Ceci est un essai</font> <br />
    <a href="#" onclick="document.getElementById('transp').style.visibility='hidden';">Fermer !</a></div>
     
    </body>
    </html>
    Merci de votre aide par avance

  2. #2
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011

  3. #3
    Membre actif
    Avatar de Wormus
    Inscrit en
    Septembre 2005
    Messages
    262
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 262
    Points : 276
    Points
    276
    Par défaut
    c que tu as oublier de mettre le tag résolu parce que je vois que ça fonctionne très bien !

    En tout cas c'est extra, j'avais déjà vu ça mais je me demander comment c'était réalisable !!

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

Discussions similaires

  1. Drag'n drop div - Javascript
    Par magnum6669 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 14/01/2013, 12h53
  2. [script.aculo.us] Drag and drop dans une div avec un scroll horizontal
    Par ridan dans le forum Bibliothèques & Frameworks
    Réponses: 7
    Dernier message: 21/07/2009, 19h14
  3. Petit modification de drag and drop par javascript
    Par bouzakher dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 30/01/2009, 17h29
  4. drag'n drop javascript php-mysql
    Par fred480 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 07/09/2008, 17h08

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