Skip to content

Commit f07f3a9

Browse files
committed
Little Bug fix
When mousedown event is triggered (by clicking) before the previouse drag event ends (only during the end animation).
1 parent 45f1c10 commit f07f3a9

File tree

4 files changed

+256
-239
lines changed

4 files changed

+256
-239
lines changed

jquery-sortable-lists-mobile.js

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,8 @@
5959
insertZone: 50,
6060
scroll: 20,
6161
isAllowed: function(cEl, hint) { return true; }, // Params: current el., hint el.
62-
complete: function(cEl) { return true; } // Params: current el., hint el.
62+
onDragStart: function( e, cEl ) { return true; }, // Params: e jQ. event obj., current el.
63+
complete: function(cEl) { return true; } // Params: current el., hint el.
6364
},
6465

6566
setting = $.extend(true, {}, defaults, options),
@@ -108,6 +109,7 @@
108109

109110
// Container with all actual elements and parameters
110111
state = {
112+
isDragged: false,
111113
isRelEFP: null, // How browser counts elementFromPoint() position (relative to window/document)
112114
oEl: null, // overElement is element which returns elementFromPoint() method
113115
rootEl: null,
@@ -145,6 +147,10 @@
145147
// Return this ensures chaining
146148
return this.on('mousedown touchstart', function(e)
147149
{
150+
var target = $( e.target );
151+
152+
if ( state.isDragged !== false || target.hasClass( setting.ignoreClass ) ) return;
153+
148154
// Solves selection/range highlighting
149155
e.preventDefault();
150156

@@ -154,11 +160,12 @@
154160
}
155161

156162
// El must be li in jQuery object
157-
var el = $(e.target).is('li') ? $(e.target) : $(e.target).closest('li'),
163+
var el = target.is('li') ? target : target.closest('li'),
158164
rEl = $(this);
159165
// Check if el is not empty
160166
if(el[0])
161167
{
168+
setting.onDragStart( e, el );
162169
startDrag(e, el, rEl);
163170
}
164171
}
@@ -308,8 +315,6 @@
308315
setTouchEvent(e);
309316
}
310317

311-
state.isDragged = false;
312-
313318
if(hintStyle.display == 'block' && hintNode.length && state.isAllowed)
314319
{
315320
targetEl = hintNode;
@@ -358,6 +363,10 @@
358363
tidyEmptyLists();
359364
}
360365

366+
setting.complete( cEl.el );
367+
368+
state.isDragged = false;
369+
361370
});
362371

363372
scrollStop(state);

jquery-sortable-lists-mobile.min.js

Lines changed: 17 additions & 17 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)