Moved logic for handling .animate({}), doesn't queue anymore. Fixes #5459.
This commit is contained in:
parent
f0505c6d75
commit
0d5bd17461
8
src/effects.js
vendored
8
src/effects.js
vendored
|
@ -108,6 +108,10 @@ jQuery.fn.extend({
|
|||
animate: function( prop, speed, easing, callback ) {
|
||||
var optall = jQuery.speed(speed, easing, callback);
|
||||
|
||||
if ( jQuery.isEmptyObject( prop ) ) {
|
||||
return this.each( optall.complete );
|
||||
}
|
||||
|
||||
return this[ optall.queue === false ? "each" : "queue" ](function() {
|
||||
var opt = jQuery.extend({}, optall), p,
|
||||
hidden = this.nodeType === 1 && jQuery(this).is(":hidden"),
|
||||
|
@ -181,10 +185,6 @@ jQuery.fn.extend({
|
|||
}
|
||||
});
|
||||
|
||||
if ( jQuery.isEmptyObject( prop ) ) {
|
||||
return optall.complete.call(this);
|
||||
}
|
||||
|
||||
// For JS strict compliance
|
||||
return true;
|
||||
});
|
||||
|
|
12
test/unit/effects.js
vendored
12
test/unit/effects.js
vendored
|
@ -120,7 +120,7 @@ test("animate option (queue === false)", function () {
|
|||
*/
|
||||
|
||||
test("animate with no properties", function() {
|
||||
expect(1);
|
||||
expect(2);
|
||||
|
||||
var divs = jQuery("div"), count = 0;
|
||||
|
||||
|
@ -129,6 +129,16 @@ test("animate with no properties", function() {
|
|||
});
|
||||
|
||||
equals( divs.length, count, "Make sure that callback is called for each element in the set." );
|
||||
|
||||
stop();
|
||||
|
||||
var foo = jQuery("#foo");
|
||||
|
||||
foo.animate({});
|
||||
foo.animate({top: 10}, 100, function(){
|
||||
ok( true, "Animation was properly dequeued." );
|
||||
start();
|
||||
});
|
||||
});
|
||||
|
||||
test("animate duration 0", function() {
|
||||
|
|
Loading…
Reference in a new issue