Fixed an issue that was introduced by [5743] (which didn't have a test case, either - that has been resolved). This fixed #3739.

This commit is contained in:
John Resig 2009-01-02 23:32:10 +00:00
parent b2552e6ea3
commit b2583a7526
2 changed files with 17 additions and 8 deletions

View file

@ -288,12 +288,9 @@ jQuery.fx.prototype = {
this.options.show = true; this.options.show = true;
// Begin the animation // Begin the animation
this.custom(0, this.cur());
// Make sure that we start at a small width/height to avoid any // Make sure that we start at a small width/height to avoid any
// flash of content // flash of content
if ( this.prop == "width" || this.prop == "height" ) this.custom(this.prop == "width" || this.prop == "height" ? 1 : 0, this.cur());
this.elem.style[this.prop] = "1px";
// Start by showing the element // Start by showing the element
jQuery(this.elem).show(); jQuery(this.elem).show();
@ -338,7 +335,7 @@ jQuery.fx.prototype = {
// Hide the element if the "hide" operation was done // Hide the element if the "hide" operation was done
if ( this.options.hide ) if ( this.options.hide )
this.elem.style.display = "none"; jQuery(this.elem).hide();
// Reset the properties, if the item has been hidden or shown // Reset the properties, if the item has been hidden or shown
if ( this.options.hide || this.options.show ) if ( this.options.hide || this.options.show )
@ -382,10 +379,10 @@ jQuery.extend( jQuery.fx, {
}, },
_default: function(fx){ _default: function(fx){
if( fx.prop in fx.elem ) if ( fx.elem.style && fx.elem.style[ fx.prop ] != null )
fx.elem[ fx.prop ] = fx.now;
else if( fx.elem.style )
fx.elem.style[ fx.prop ] = fx.now + fx.unit; fx.elem.style[ fx.prop ] = fx.now + fx.unit;
else
fx.elem[ fx.prop ] = fx.now;
} }
} }
}); });

View file

@ -34,6 +34,18 @@ test("animate option (queue === false)", function () {
}); });
}); });
test("animate non-element", function(){
expect(1);
stop();
var obj = { test: 0 };
jQuery(obj).animate({test: 200}, 200, function(){
equals( obj.test, 200, "The custom property should be modified." );
start();
});
});
test("stop()", function() { test("stop()", function() {
expect(3); expect(3);
stop(); stop();