Posez votre question Signaler

Drag n drop [Résolu]

Smoking bird 886Messages postés 11 mars 2008Date d'inscription 10 juillet 2011Dernière intervention - Dernière réponse le 4 mars 2009 à 01:38
Bonjour,
Je débute dans javascript, et j'essai de créer un effet de drag n drop, mais pour le moment j'essui un échec critique. J'ai notamment un sacré problème sur la portée des variables, et je ne sais comment le régler. Bien que je les déclare hors de toute fonction, le fait de les modifier dans une fonction ne me permet pas d'y accéder à travers une autre fonction
Voici le code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style>
#dean {
	border:1px solid red; background-color:blue; width:75px; height:75px; position:absolute;
}
</style>
<script language='javascript'>
	var mouseX; var mouseY;
	var innerMX; var innerMY;
	var xObj; var yObj;
	var wObj; var hObj;
	var e; var Obj; var dragin;
	
function move(Obj){
	e = window.event;
			mouseX = e.x;
			mouseY = e.y;
			xObj = Obj.offsetLeft; yObj = Obj.offsetTop;
			wObj = Obj.offsetWidth; hObj = Obj.offsetHeight;
			dragin = true; Obj = document.getElementById(Obj);
		//Obj.style.left=mouseX; Obj.style.top=mouseY;
}
function clear(){
	if( dragin == true ){
		dragin = false; Obj = '';
	}
}
function moving(){
	if( dragin == true ){
		//Obj.style.left = mouseX; Obj.style.top = mouseY;
		alert(Obj+' '+mouseX+' '+mouseY);	
	}
}
</script>
</head>
<body onmouseup='clear()' onmousemove='moving()'>
	<input type='text' id='infos' onmousedown='move("infos")'/>
		<div>
			<div id='dean' onmousedown='move("dean")'></div>
		</div>
</body>
</html>

Quelqu'un pourrait-il m'aider?
En vous remerciant,
Smoke
Lire la suite 

Drag n drop »

6 réponses
Réponse
+0
moins plus
en règle général mettez le lien c' est plus facile pour debuguer , cela facilite le travail de ceux qui peuvent répondre.
si vous ne voulez pas mettre le code integral recopiez le partiellement
Ajouter un commentaire
Réponse
+0
moins plus
voici:
http://spheresoccultes.com/crasher/index3.php
Ajouter un commentaire
Réponse
+0
moins plus
faut faire ton getElementById plus tot
un conseil ne reutilises pas le meme nom
Ajouter un commentaire
Réponse
+0
moins plus
comment ça ne pas réutiliser le même nom?
Ajouter un commentaire
Réponse
+0
moins plus
up
Smoking bird - 4 mars 2009 à 01:38
Après avoir proprement tout repris depuis le début, j'ai réglé mon problème (ça arrive souvent comme ça).

Je serais complètement incapable de dire comment, vu le nombre d'autres problèmes que j'ai rencontrés par la suite, mais mon script a atteint un stade d'avancement satisfaisant. Actuellement il est on ne peut plus fiable, tant qu'on reste sur IE ou Opera. Il bug sous FF, Safari et Chrome, pour une raison qui m'échappe, compte tenu de mes précédents tests qui démontraient qu'il était relativement cross-browser (sauf pour Firefox -_-').

Je mets donc le fil en résolu, et n'ajouterais pas d'autres commentaires.
Ajouter un commentaire
Ce document intitulé « Drag n drop » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook