From: Scott González Date: Mon, 1 Oct 2012 20:52:54 +0000 (-0400) Subject: Accordion: Only adjust height animations for heightStyle: content. Fix tests that... X-Git-Tag: 1.9.0~12 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=2c50b1b8b58bc7ca6a965e4deff480a1c733766b;p=jquery-ui.git Accordion: Only adjust height animations for heightStyle: content. Fix tests that punch .animate(). --- diff --git a/tests/unit/accordion/accordion_options.js b/tests/unit/accordion/accordion_options.js index 2b8222f5c..5d950e1ac 100644 --- a/tests/unit/accordion/accordion_options.js +++ b/tests/unit/accordion/accordion_options.js @@ -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 ); }; diff --git a/ui/jquery.ui.accordion.js b/ui/jquery.ui.accordion.js index bc3cbfcc6..48e880a05 100644 --- a/ui/jquery.ui.accordion.js +++ b/ui/jquery.ui.accordion.js @@ -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; }