Comment puis je faire pour q'un utilisateur puisse déplacer des éléments (j'entend des gens qui hurle...) oui,je me doute qu'a expliqué, ca va pas etre simple-simple... Y a des exemples ou des tuto qui trainent?
Comment puis je faire pour q'un utilisateur puisse déplacer des éléments (j'entend des gens qui hurle...) oui,je me doute qu'a expliqué, ca va pas etre simple-simple... Y a des exemples ou des tuto qui trainent?
un petit point de depart ici :
2 site en anglais
mais avec google 'javascript deplacer' ca devrait pas
etre dur d'en trouver d'autre
http://www.sergey.com/web_course/par...l#dhtml_moving
http://javascript.about.com/library/blanim07.htm
En fait, c est plus du style drag&drop, ce que je cherche a faire(....ben en fait, c est du drag&drop...), j'ai trouvé du code qui marche sous IE, mais rien pour FF (c est moche, on m'a demandé que ce soit compatible pour ses 2 navigateurs, donc...)
un chti n'exemple...
ça relève plus de javascript qu'autre chose ...
y'a juste a modifier un peu le css pur le curseur ...
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199 <html> <head> <style> .dragDrop { position:absolute; color:#FFFFFF; font-family:Arial; font-size:10pt; font-weight:bold; z-index:0; cursor:hand; } </style> <script language="JavaScript"> <!-- function TElement(id) { this.id=id; this.elt=(this.id) ? document.getElementById(id) : null; function getX() { return this.elt.offsetLeft; } TElement.prototype.getX=getX; function getY() { return this.elt.offsetTop; } TElement.prototype.getY=getY; function setX(x) { return this.elt.style.left=x+"px"; } TElement.prototype.setX=setX; function setY(y) { return this.elt.style.top=y+"px" } TElement.prototype.setY=setY; } function TEvent() { this.x = 0; this.y = 0; function init(evt) { this.evt=(evt) ? evt : window.event; // l'objet événement if (!this.evt) return; this.elt=(this.evt.target) ? this.evt.target : this.evt.srcElement; // la source de l'événement this.id=(this.elt) ? this.elt.id : ""; // Calcul des coordonnées de la souris par rapport au document if (this.evt.pageX || this.evt.pageY) { this.x = this.evt.pageX; this.y = this.evt.pageY; } else if (this.evt.clientX || this.evt.clientY) { this.x = this.evt.clientX + document.body.scrollLeft; this.y = this.evt.clientY + document.body.scrollTop; } } TEvent.prototype.init=init; function stop() { this.evt.cancelBubble = true; if (this.evt.stopPropagation) this.evt.stopPropagation(); } TEvent.prototype.stop=stop; } function TDragObject(id) { if (!id) return; this.base=TElement; this.base(id); this.elt.obj=this this.elt.onmousedown=_startDrag; function startDrag(evt) { this.elt.style.zIndex=1; this.lastMouseX=evt.x; this.lastMouseY=evt.y; evt.dragObject=this; document.onmousemove=_drag; document.onmouseup=_stopDrag; if (this.onStartDrag) this.onStartDrag(); } TDragObject.prototype.startDrag=startDrag; function stopDrag(evt) { this.elt.style.zIndex=0; evt.dragObject=null; document.onmousemove=null; document.onmouseup=null; if (this.onDrop) this.onDrop(); } TDragObject.prototype.stopDrag=stopDrag; function drag(evt) { dX=this.getX()+evt.x-this.lastMouseX; dY=this.getY()+evt.y-this.lastMouseY; this.setX(dX); this.setY(dY); this.lastMouseX=evt.x; this.lastMouseY=evt.y; if (this.onDrag) this.onDrag(); } TDragObject.prototype.drag=drag; } TDragObject.prototype=new TElement(); var _event=new TEvent(); // Objet global pour manipuler l'événement en cours function _startDrag(evt) { _event.init(evt); if (this.obj && this.obj.startDrag) { this.obj.startDrag(_event); } } function _stopDrag(evt) { if (_event.dragObject) _event.dragObject.stopDrag(_event); } function _drag(evt) { _event.init(evt); if (_event.dragObject) _event.dragObject.drag(_event); return false; } function afficherStatus() { window.status="Object ["+this.id+"] se trouve en ("+this.getX()+","+this.getY()+")"+ " text =\""+this.elt.innerHTML+"\""; } function load() { tst=new TDragObject("test"); tst.onDrag=afficherStatus; tst2=new TDragObject("test2"); tst2.onDrag=afficherStatus; } // --> </script> </head> <body onload="load()"> <div id ="test" class="dragDrop" style="background-color:#0000FF;"> Déplacez moi ! </div> <div id ="test2" class="dragDrop" style="left:10px; top:50px; background-color:#FF0000;"> Moi aussi ! </div> </body> </html>
....euh je vais faire mon casse-***** mais pourquoi ne marche t'il pas sous FF? y a moyen de remédier a ca?
un pichti lien magnifiquement beau sur le drag and drop. T'as qu'à piquer leur code...bonne chance lol
http://www.netvibes.com/
tu testes sous quelle version de ffx ?
je n'ai aucun souci chez moi avec le code que je t'ai donné ...
effectivement, ton code marche sous ff.... qu est ce que j ai modifié qui le fout en l air alors !!!!
ben utilise la console debu de ffx ...
... oki, donc, bon ben le Pb vient majoritairement du iframe de ravagé qui se trouve sous mes barres d'outils...
ha ben oui dragguer d'un frame à l'autre ... pas évident ...
c est meme pas ca: j ai une "page blanche" (vierge de quoi que se soit, quoi), le drag and drop marche
Je met mon iframe marche plus du tout du tout meme pas un p'tit déplacement de rien du tout...
très surprenant car en rajoutant un iframe dans le code que je t'ai passé, à ma grande surprise ça marche... j'arrive même à passer au dessus de l'iframe ...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager