Skip to content

Commit 5a8596c

Browse files
committed
Accordion: Maintain collapsed state on refresh. Fixes #9189 - Accordion: refresh() method incorrectly opens collapsed accordion.
1 parent 2c43548 commit 5a8596c

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed

tests/unit/accordion/accordion_methods.js

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ test( "enable/disable", function() {
3535
});
3636

3737
test( "refresh", function() {
38-
expect( 17 );
38+
expect( 19 );
3939
var element = $( "#navigation" )
4040
.parent()
4141
.height( 300 )
@@ -109,6 +109,15 @@ test( "refresh", function() {
109109
element.find( "div.foo" ).eq( 0 ).remove();
110110
element.accordion( "refresh" );
111111
state( element, 1 );
112+
113+
// collapse all panels
114+
element.accordion( "option", {
115+
collapsible: true,
116+
active: false
117+
});
118+
state( element, 0 );
119+
element.accordion( "refresh" );
120+
state( element, 0 );
112121
});
113122

114123
test( "widget", function() {

ui/jquery.ui.accordion.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -223,7 +223,7 @@ $.widget( "ui.accordion", {
223223
options.active = false;
224224
this.active = $();
225225
// active false only when collapsible is true
226-
} if ( options.active === false ) {
226+
} else if ( options.active === false ) {
227227
this._activate( 0 );
228228
// was active, but active panel is gone
229229
} else if ( this.active.length && !$.contains( this.element[ 0 ], this.active[ 0 ] ) ) {

0 commit comments

Comments
 (0)