@@ -132,7 +132,7 @@ var _destroySortable = function(sortable) {
132132 _removeSortableEvents ( sortable ) ;
133133 _removeSortableData ( sortable ) ;
134134 // remove event handlers & data from items
135- handles . off ( 'selectstart .h5s' ) ;
135+ handles . off ( 'mousedown .h5s' ) ;
136136 _removeItemEvents ( items ) ;
137137 _removeItemData ( items ) ;
138138} ;
@@ -143,8 +143,19 @@ var _destroySortable = function(sortable) {
143143var _enableSortable = function ( sortable ) {
144144 var opts = sortable . data ( 'opts' ) ;
145145 var items = sortable . children ( opts . items ) ;
146+ var handles = opts . handle ? items . find ( opts . handle ) : items ;
146147 sortable . attr ( 'aria-dropeffect' , 'move' ) ;
147- items . attr ( 'draggable' , true ) ;
148+ handles . attr ( 'draggable' , 'true' ) ;
149+ // IE FIX for ghost
150+ if ( typeof document . createElement ( 'span' ) . dragDrop === 'function' ) {
151+ handles . on ( 'mousedown.h5s' , function ( ) {
152+ if ( items . index ( this ) !== - 1 ) {
153+ this . dragDrop ( ) ;
154+ } else {
155+ $ ( this ) . parents ( opts . items ) [ 0 ] . dragDrop ( ) ;
156+ }
157+ } ) ;
158+ }
148159} ;
149160/*
150161 * public sortable object
@@ -175,7 +186,6 @@ var sortable = function(options) {
175186
176187 var index ;
177188 var items = $sortable . children ( options . items ) ;
178- var handles = options . handle ? items . find ( options . handle ) : items ;
179189
180190 if ( method === 'reload' ) {
181191 // remove event handlers from items
@@ -216,18 +226,6 @@ var sortable = function(options) {
216226 items . attr ( 'role' , 'option' ) ;
217227 items . attr ( 'aria-grabbed' , 'false' ) ;
218228
219- // Setup drag handles
220- handles . attr ( 'draggable' , 'true' ) ;
221- // IE FIX for ghost
222- if ( typeof document . createElement ( 'span' ) . dragDrop === 'function' ) {
223- handles . on ( 'mousedown' , function ( ) {
224- if ( items . index ( this ) !== - 1 ) {
225- this . dragDrop ( ) ;
226- } else {
227- $ ( this ) . parents ( options . items ) [ 0 ] . dragDrop ( ) ;
228- }
229- } ) ;
230- }
231229 // Handle drag events on draggable items
232230 items . on ( 'dragstart.h5s' , function ( e ) {
233231 e . stopImmediatePropagation ( ) ;
0 commit comments