Skip to content
Permalink
Browse files

Sortable: Don't create functions inside loops.

  • Loading branch information
scottgonzalez committed Apr 22, 2013
1 parent 71a332e commit 7033544cdd9792f4b1be473eeea7bc37eed52469
Showing with 12 additions and 8 deletions.
  1. +12 −8 ui/jquery.ui.sortable.js
@@ -15,8 +15,6 @@
*/
(function( $, undefined ) {

/*jshint loopfunc: true */

function isOverAxis( x, reference, size ) {
return ( x > reference ) && ( x < ( reference + size ) );
}
@@ -629,10 +627,11 @@ $.widget("ui.sortable", $.ui.mouse, {

queries.push([$.isFunction(this.options.items) ? this.options.items.call(this.element, null, { options: this.options, item: this.currentItem }) : $(this.options.items, this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"), this]);

function addItems() {
items.push( this );
}
for (i = queries.length - 1; i >= 0; i--){
queries[i][0].each(function() {
items.push(this);
});
queries[i][0].each( addItems );
}

return $(items);
@@ -1190,12 +1189,17 @@ $.widget("ui.sortable", $.ui.mouse, {


//Post events to containers
function delayEvent( type, instance, container ) {
return function( event ) {
container._trigger( type, event, instance._uiHash( instance ) );
};
}
for (i = this.containers.length - 1; i >= 0; i--){
if(!noPropagation) {
delayedTriggers.push((function(c) { return function(event) { c._trigger("deactivate", event, this._uiHash(this)); }; }).call(this, this.containers[i]));
if (!noPropagation) {
delayedTriggers.push( delayEvent( "deactivate", this, this.containers[ i ] ) );
}
if(this.containers[i].containerCache.over) {
delayedTriggers.push((function(c) { return function(event) { c._trigger("out", event, this._uiHash(this)); }; }).call(this, this.containers[i]));
delayedTriggers.push( delayEvent( "out", this, this.containers[ i ] ) );
this.containers[i].containerCache.over = 0;
}
}

0 comments on commit 7033544

Please sign in to comment.
You can’t perform that action at this time.