Glisser Déposer problèeme avec Event target sur firefox

Signaler
Messages postés
1
Date d'inscription
lundi 26 avril 2004
Statut
Membre
Dernière intervention
29 novembre 2005
-
Messages postés
170
Date d'inscription
mercredi 18 juin 2003
Statut
Membre
Dernière intervention
11 mai 2009
-
Salut à tous,
Ca fait 2 jours que je cherche à trouver pourquoi sur firefox, lorsque je mousedown sur un div avec une posisiton absolute, et que je mouseup sur un autre objet du document, le target que l'évènement me renvoie est le div sur lequel j'ai initialement cliqué.
De plus, on peut remarquer, en passant, que le div1 pour lequel j'ai fixé une hauteur, ne s'est pas agrandit pour s'adapter au texte.
Sur IE, tout va bien.
HELP !!!!!
Voici le code de test :

*************
<html>
<head>
<title>Test event.target</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

TEST TD 1,

----

TEST TD 2

Cliquez ici puis déplacez la souris en maintenant le bouton gauche jusqu'à un autre objet pour avoir le target...

DIV 2



DIV 3

</html>
<SCRIPT LANGUAGE="JavaScript">
if (!document.all)
document.addEventListener("mouseup", test, true);
else
document.attachEvent("onmouseup", test);
function test (ev)
{
msg=(!document.all)?ev.target.id:event.srcElement.id;
alert(msg);
}

</script>
*************

Merci de votre aide.

1 réponse

Messages postés
170
Date d'inscription
mercredi 18 juin 2003
Statut
Membre
Dernière intervention
11 mai 2009

"...De plus, on peut remarquer, en passant, que le div1 pour lequel j'ai
fixé une hauteur, ne s'est pas agrandit pour s'adapter au texte...."



=> pour ca vu que tu as precisé une position en absolue il faut
mettre height:auto; (et regarde aussi la propriété overflow en css, ca
peut de servire).





Pour le problème d'événement :



<SCRIPT LANGUAGE="JavaScript">

if (!document.all)

document.addEventListener("mouseup", test, true);

else

document.attachEvent("onmouseup", test);



if (!document.all)

document.addEventListener("mouseout", test2, true);

else

document.attachEvent("onmouseout", test2);





function test (ev)

{

msg=(!document.all)?ev.target.id:event.srcElement.id;

alert('up from '+ msg);

}

function test2 (ev)

{

msg=(!document.all)?ev.target.id:event.srcElement.id;

alert('out from '+msg);

}



</script>




Si tu dragues l'événement onmouseout n'a pas lieu... ca doit etre pour ca que la cible ne change pas.

A mon avis veut mieux que tu regardes du coteé des événements spécifique au drag & drop :

Exemple http://www.mozilla.org/docs/dom/domref/dom_window_ref57.html



Liste complète ici:

http://www.laltruiste.com/coursjavascript/evenement.html' target='_blank'>http://www.laltruiste.com/document.php?url=http://www.laltruiste.com/coursjavascript/evenement.html



Attention toutefois selon les navigateurs certains événement se nomme pas pareil ou n'existe pas.