jquery fx: closes #2542. show/hide(0, fn) wasn't calling the callback.
authorAriel Flesler <aflesler@gmail.com>
Tue, 15 Sep 2009 00:32:13 +0000 (00:32 +0000)
committerAriel Flesler <aflesler@gmail.com>
Tue, 15 Sep 2009 00:32:13 +0000 (00:32 +0000)
src/fx.js
test/unit/fx.js

index 0596b2b..a73ce32 100644 (file)
--- a/src/fx.js
+++ b/src/fx.js
@@ -19,7 +19,7 @@ function genFx( type, num ){
 
 jQuery.fn.extend({
        show: function(speed,callback){
-               if ( speed ) {
+               if ( speed !== undefined ) {
                        return this.animate( genFx("show", 3), speed, callback);
                } else {
                        for ( var i = 0, l = this.length; i < l; i++ ){
@@ -59,7 +59,7 @@ jQuery.fn.extend({
        },
 
        hide: function(speed,callback){
-               if ( speed ) {
+               if ( speed !== undefined ) {
                        return this.animate( genFx("hide", 3), speed, callback);
                } else {
                        for ( var i = 0, l = this.length; i < l; i++ ){
index 87e6aea..6b81322 100644 (file)
@@ -68,7 +68,7 @@ test("animate option (queue === false)", function () {
 */
 
 test("animate duration 0", function() {
-       expect(5);
+       expect(7);
        
        stop();
        
@@ -97,7 +97,15 @@ test("animate duration 0", function() {
                // Failed until [6115]
                equals( counter, 5, "One synchronic and one asynchronic" );
                start();
-       });     
+       });
+       
+       var $elem = jQuery("<div />");
+       $elem.show(0, function(){ 
+               ok(true, "Show's callback with no duration");
+       });
+       $elem.hide(0, function(){ 
+               ok(true, "Show's callback with no duration");
+       });
 });
 
 test("animate hyphenated properties", function(){