#21036 - HTML Drag and Drop API - Web APIs | MDN
https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API(ceci est une note à moi-même)
Y a des subtilités dans cette API.
La DOC est très claire, mais faut quand-même faire gaffe.
Premier truc : un élément n’acceptera un "drop" (et l’événement "ondrop" ne se lancera) que si l’élément a un "onDragEnter" ET un "onDragOver". S’il n’a pas les deux, ça ne marchera pas.
Ensuite, ne confondez pas les variables :
– event.target : l’élément qui reçoit l’événement (le clic)
– event.currentTarget : l’élément à qui sont attachés les gestionnaires d’événements.
C’est subtil.
Imaginez un SPAN dans un DIV.
Le div est draggable, mais pas spécialement le span. On peut clic sur le span et commencer à le bouger. Dans ce cas, e.target sera le span, mais le vrai élément à considérer sera e.curentTarget, le div (car c’est lui — et son contenu, le span) qui est draggable.
C’est à utiliser aussi lors du drop.
Si on a un UL avec plein de LI que l’on drag-and-drop, il ne faudrait pas que l’on se retrouve avec un UL > LI > LI parce qu’on a drop un LI sur un LI, alors que la dropzone c’est le UL.
~