#12818 - Issue 131325 - chromium - dragleave event fires upon entering child element of listener - An open-source project to help move the web forward. - Google Project Hosting
https://code.google.com/p/chromium/issues/detail?id=131325
Ok, donc Chrome bug avec les drag'n'drop.
Quand je fais body.ondragover, ça démarre la fonction lors du drag. Sauf que moi, je veux étendre un DIV sur toute la page (position absolute) pour recueillir les fichiers. Dès que la souris passe sur ce DIV (directement, donc, vu que son affichage est déclenché par le body.ondragover), le body.ondragover s’arrête : en effet, la souris est passé sur un autre élément que body.
Chrome a ce problème depuis 3 ans et rien ne semble être fait.
Une solution c’est d’ajouter sur le "dragleave" un if (event.pageX != 0 || event.pageY != 0) { return false;}.
Comme ça, vos fonctions à exécuter quand on sort la souris du body ne sont pas exécutés quand c’est le passage de la souris sur un élément enfant.
Quand je fais body.ondragover, ça démarre la fonction lors du drag. Sauf que moi, je veux étendre un DIV sur toute la page (position absolute) pour recueillir les fichiers. Dès que la souris passe sur ce DIV (directement, donc, vu que son affichage est déclenché par le body.ondragover), le body.ondragover s’arrête : en effet, la souris est passé sur un autre élément que body.
Chrome a ce problème depuis 3 ans et rien ne semble être fait.
Une solution c’est d’ajouter sur le "dragleave" un if (event.pageX != 0 || event.pageY != 0) { return false;}.
Comme ça, vos fonctions à exécuter quand on sort la souris du body ne sont pas exécutés quand c’est le passage de la souris sur un élément enfant.