Ticket #2441 (closed bug: fixed)
'missing' over event with nested droppables
|Reported by:||StrikerNL||Owned by:||codesquare|
|Keywords:||droppable over event||Cc:|
There seems to be a bug in droppable, when multiple divs are nested and droppable.
The over event for a parent droppable only gets called once; it doesn't seem to get called when one moves into a child droppable and back into the parent droppable.
The out event for the child does get called. One could, using this, keep track of the droppables that are currently in an 'over' state, and so know when the draggable has moved back into the parent droppable.
Maybe this is by design, it doesn't make for convenient coding however.
My suggestion is to either make the over event be triggered when a draggable leaves a child droppable into a parent droppable, or make it a behaviour option.
I have created a testcase which can be found at http://ddcrew-dev.be/droppable/ (also attached as droppable.zip).
The left frame shows the situation as it is now, the right frame shows how I'd prefer it to be. To test it, simply drag the draggable over the droppables and observe the 'over' and 'out' events that get called.
The code I wrote to make the 'fixed' version can be found in ui.droppable.fixed.js. I have also included a patch against jquery ui 1.5b ( droppable.patch). I'm not sure if it's good enough for inclusion, someone more expert will have judge that.
Thanks for this great jquery plugin and your time!