Accordion: Only adjust height animations for heightStyle: content. Fix tests that punch .animate().

This commit is contained in:
Scott González 2012-10-01 16:52:54 -04:00
parent d20f05ea37
commit 2c50b1b8b5
2 changed files with 20 additions and 20 deletions

View File

@ -105,9 +105,9 @@ asyncTest( "{ animate: Number }", function() {
panels = element.find( ".ui-accordion-content" ),
animate = $.fn.animate;
// called twice (both panels)
$.fn.animate = function( props, duration, easing ) {
equal( duration, 100, "correct duration" );
equal( easing, undefined, "default easing" );
$.fn.animate = function( props, options ) {
equal( options.duration, 100, "correct duration" );
equal( options.easing, undefined, "default easing" );
animate.apply( this, arguments );
};
@ -129,9 +129,9 @@ asyncTest( "{ animate: String }", function() {
panels = element.find( ".ui-accordion-content" ),
animate = $.fn.animate;
// called twice (both panels)
$.fn.animate = function( props, duration, easing ) {
equal( duration, undefined, "default duration" );
equal( easing, "linear", "correct easing" );
$.fn.animate = function( props, options ) {
equal( options.duration, undefined, "default duration" );
equal( options.easing, "linear", "correct easing" );
animate.apply( this, arguments );
};
@ -153,9 +153,9 @@ asyncTest( "{ animate: {} }", function() {
panels = element.find( ".ui-accordion-content" ),
animate = $.fn.animate;
// called twice (both panels)
$.fn.animate = function( props, duration, easing ) {
equal( duration, undefined, "default duration" );
equal( easing, undefined, "default easing" );
$.fn.animate = function( props, options ) {
equal( options.duration, undefined, "default duration" );
equal( options.easing, undefined, "default easing" );
animate.apply( this, arguments );
};
@ -177,9 +177,9 @@ asyncTest( "{ animate: { duration, easing } }", function() {
panels = element.find( ".ui-accordion-content" ),
animate = $.fn.animate;
// called twice (both panels)
$.fn.animate = function( props, duration, easing ) {
equal( duration, 100, "correct duration" );
equal( easing, "linear", "correct easing" );
$.fn.animate = function( props, options ) {
equal( options.duration, 100, "correct duration" );
equal( options.easing, "linear", "correct easing" );
animate.apply( this, arguments );
};
@ -202,9 +202,9 @@ asyncTest( "{ animate: { duration, easing } }, animate down", function() {
panels = element.find( ".ui-accordion-content" ),
animate = $.fn.animate;
// called twice (both panels)
$.fn.animate = function( props, duration, easing ) {
equal( duration, 100, "correct duration" );
equal( easing, "linear", "correct easing" );
$.fn.animate = function( props, options ) {
equal( options.duration, 100, "correct duration" );
equal( options.easing, "linear", "correct easing" );
animate.apply( this, arguments );
};
@ -233,9 +233,9 @@ asyncTest( "{ animate: { duration, easing, down } }, animate down", function() {
panels = element.find( ".ui-accordion-content" ),
animate = $.fn.animate;
// called twice (both panels)
$.fn.animate = function( props, duration, easing ) {
equal( duration, 100, "correct duration" );
equal( easing, "swing", "correct easing" );
$.fn.animate = function( props, options ) {
equal( options.duration, 100, "correct duration" );
equal( options.easing, "swing", "correct easing" );
animate.apply( this, arguments );
};

View File

@ -518,10 +518,10 @@ $.widget( "ui.accordion", {
easing: easing,
complete: complete,
step: function( now, fx ) {
fx.now = Math.round( now );
if ( fx.prop !== "height" ) {
fx.now = Math.round( now );
adjust += fx.now;
} else {
} else if ( that.options.heightStyle !== "content" ) {
fx.now = Math.round( total - toHide.outerHeight() - adjust );
adjust = 0;
}