Accordion: Maintain collapsed state on refresh. Fixes #9189 - Accordion: refresh() method incorrectly opens collapsed accordion.

This commit is contained in:
Scott González 2013-03-27 15:23:59 -04:00
parent 2c43548ac6
commit 5a8596cdf3
2 changed files with 11 additions and 2 deletions

View File

@ -35,7 +35,7 @@ test( "enable/disable", function() {
});
test( "refresh", function() {
expect( 17 );
expect( 19 );
var element = $( "#navigation" )
.parent()
.height( 300 )
@ -109,6 +109,15 @@ test( "refresh", function() {
element.find( "div.foo" ).eq( 0 ).remove();
element.accordion( "refresh" );
state( element, 1 );
// collapse all panels
element.accordion( "option", {
collapsible: true,
active: false
});
state( element, 0 );
element.accordion( "refresh" );
state( element, 0 );
});
test( "widget", function() {

View File

@ -223,7 +223,7 @@ $.widget( "ui.accordion", {
options.active = false;
this.active = $();
// active false only when collapsible is true
} if ( options.active === false ) {
} else if ( options.active === false ) {
this._activate( 0 );
// was active, but active panel is gone
} else if ( this.active.length && !$.contains( this.element[ 0 ], this.active[ 0 ] ) ) {