Plusieurs evenements on(click|mouseUp|mouseDown) sur des éléments parent et fils
codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 2009
-
17 févr. 2008 à 20:59
codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 2009
-
18 févr. 2008 à 12:23
Bonsoir à tous :)
Je suis confronté à un petit soucis.
J'ai un élément parent, une div, id="container".
Je lui ai attribué des évenements onMouseUp, onMouseDown et onMouseMove.
Ca marche nikel, rien à redire :p
Dans mon code, ensuite, j'ai générée une div (document.createElement ('div');) que j'ai placé dans la div "container".
A cet element fils, je lui ai aussi attribué des évenements onMouseUp, onMouseDown et onMouseMove.
Le probleme, c'est que les évenements de l'élément fils ne fonctionnent pas.
Par contre si je désactive les évenements sur l'élement parent, les evenements de l'élément fils fonctionneront.
codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 20091 18 févr. 2008 à 11:40
Toujours toi ! :p
J'ai réfléchis à mon probleme, mais ma question était stupide, je voulais que le navigateur devine sur quel élément je clique, c'est pas sensé ! :p
Voila comme j'ai fait.
J'ai une classe qui crée des divs à la volée.
J'ai fait une classe factory qui instancie la classe qui crée les divs, et elle enregistre les instances d'objets dans un tableau associatif, ou les clées sont les id des divs.
J'ai une classe MouseEvent, qui utilise les document.onMouse(Move|Up|Down) et à chaque evenement, je fait un
instanceDeLaFactory.mouseAction (idElementCliked) et dans ma factory, elle va appeler la fonction mouseAction de la classe qui genere les divs, mais avec la bonne instance (monTable[idElementClicked].mouseAction) et cette méthode, dans la classe qui génere la div, va me retourner si oui ou non je peux faire quelque chose dessus (je veux modifier la taille si je suis au bord).
si ca retourne false je part sur une action de l'élément parent et hop ! :)
Tu pense quoi de cette implémentation, en aurait-tu une meilleur ?
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 18 févr. 2008 à 12:02
>>J'ai réfléchis à mon probleme, mais ma question était stupide,
ben non.... puisque je parlais d'une piste possible ;o)
ou alors je n'avais pas compris ?
>>je
voulais que le navigateur devine sur quel élément je clique, c'est pas
sensé !
euh.... ça aussi on peut !
dernier élément qui à eu le focus
function qui(evt)
{ var target;
if ("activeElement" in document)
{ target = document.activeElement; }
else { target = evt ? evt.explicitOriginalTarget : null; }
return target;
}
>> en aurais-tu une meilleur ?
j'en doute...
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 18 févr. 2008 à 12:21
je doute que je puisse proposer quelque chose d'autre,
et même, je doute que ce serait meilleur si je le faisais.
<hr /> Cordialement Bul [mon Site] [M'écrire]
codefalse
Messages postés1123Date d'inscriptionmardi 8 janvier 2002StatutModérateurDernière intervention21 avril 20091 18 févr. 2008 à 12:23
Pourquoi tu doute que ce serait meilleur ? tu doute de toi ? Vu tes compétences tu devrait pas ! :p
Perso je trouve ca lourd mais c'est la seule solution possible que j'ai trouvé :/