Changed return type to undefined for certain functions, as discussed.
[jquery.git] / src / fx / fx.js
index b51129e..3fd4990 100644 (file)
@@ -305,6 +305,14 @@ jQuery.fn.extend({
         *   left: 50, opacity: 'show'
         * }, 500);
         *
+        * @test stop();
+        * var hash = {opacity: 'show'};
+        * var hashCopy = $.extend({}, hash);
+        * $('#foo').animate(hash, 'fast', function() {
+        *  ok( hash.opacity == hashCopy.opacity, 'Check if animate changed the hash parameter' );
+        *  start();
+        * });
+        *
         * @name animate
         * @type jQuery
         * @param Hash params A set of style attributes that you wish to animate, and to what end.
@@ -315,7 +323,7 @@ jQuery.fn.extend({
        animate: function(prop,speed,callback) {
                return this.queue(function(){
                
-                       this.curAnim = prop;
+                       this.curAnim = jQuery.extend({}, prop);
                        
                        for ( var p in prop ) {
                                var e = new jQuery.fx( this, jQuery.speed(speed,callback), p );
@@ -486,10 +494,7 @@ jQuery.extend({
                        z.el.orig[prop] = this.cur();
                        
                        // Begin the animation
-                       if (prop == "opacity")
-                               z.custom(z.el.orig[prop], 1);
-                       else
-                               z.custom(0, z.el.orig[prop]);
+                       z.custom(0, z.el.orig[prop]);
 
                        // Stupid IE, look what you made me do
                        if ( prop != "opacity" )
@@ -510,7 +515,7 @@ jQuery.extend({
                };
        
                // Remember  the overflow of the element
-               if ( !z.el.oldOverlay )
+               if ( !z.el.oldOverflow )
                        z.el.oldOverflow = jQuery.css( z.el, "overflow" );
        
                // Make sure that nothing sneaks out