Commit 1d299d37 authored by David Serduke's avatar David Serduke

Fix for #1823 bug in animate {queue:false} plus a unit test.

parent ab96367f
...@@ -201,6 +201,7 @@ jQuery.extend({ ...@@ -201,6 +201,7 @@ jQuery.extend({
// Queueing // Queueing
opt.old = opt.complete; opt.old = opt.complete;
opt.complete = function(){ opt.complete = function(){
if ( opt.queue !== false )
jQuery(this).dequeue(); jQuery(this).dequeue();
if ( jQuery.isFunction( opt.old ) ) if ( jQuery.isFunction( opt.old ) )
opt.old.apply( this ); opt.old.apply( this );
......
...@@ -11,6 +11,29 @@ test("animate(Hash, Object, Function)", function() { ...@@ -11,6 +11,29 @@ test("animate(Hash, Object, Function)", function() {
}); });
}); });
test("animate option (queue === false)", function () {
expect(1);
stop();
var order = [];
var $foo = $("#foo");
$foo.animate({width:'100px'}, 200, function () {
// should finish after unqueued animation so second
order.push(2);
});
$foo.animate({fontSize:'2em'}, {queue:false, duration:10, complete:function () {
// short duration and out of queue so should finish first
order.push(1);
}});
$foo.animate({height:'100px'}, 10, function() {
// queued behind the first animation so should finish third
order.push(3);
isSet( order, [ 1, 2, 3] );
start();
});
});
test("stop()", function() { test("stop()", function() {
expect(3); expect(3);
stop(); stop();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment