Skip to content
Permalink
Browse files

Accordion: Fixed #3969: Deprecated alwaysOpen for collapsible option;…

… fixed demos, tests, and using alwaysOpen on init.
  • Loading branch information
scottgonzalez committed Feb 2, 2009
1 parent 43ebec6 commit 94c16d6378b51f8f9d60768f902a0dbf0d6d5087
Showing with 16 additions and 8 deletions.
  1. +2 −2 demos/accordion/collapsible.html
  2. +5 −5 tests/unit/accordion/accordion.js
  3. +9 −1 ui/ui.accordion.js
@@ -10,7 +10,7 @@
<script type="text/javascript">
$(function() {
$("#accordion").accordion({
alwaysOpen: false
collapsible: true
});
});
</script>
@@ -49,7 +49,7 @@ <h3><a href="#">Section 4</a></h3>

<div class="demo-description">

<p>By default, accordions always keep one section open. To allow for all sections to be be collapsible, set the <code>alwaysOpen</code> option to false. Click on the currently open section to collapse its content pane.</p>
<p>By default, accordions always keep one section open. To allow for all sections to be be collapsible, set the <code>collapsible</code> option to true. Click on the currently open section to collapse its content pane.</p>


</div><!-- End demo-description -->
@@ -48,8 +48,8 @@ test("activate, numeric", function() {
state(ac, 0, 0, 1);
});

test("activate, boolean and numeric, alwaysOpen:false", function() {
var ac = $('#list1').accordion({alwaysOpen: false}).accordion("activate", 2);
test("activate, boolean and numeric, collapsible:true", function() {
var ac = $('#list1').accordion({collapsible: true}).accordion("activate", 2);
state(ac, 0, 0, 1);
ok("x", "----");
ac.accordion("activate", 0);
@@ -59,7 +59,7 @@ test("activate, boolean and numeric, alwaysOpen:false", function() {
state(ac, 0, 0, 0);
});

test("activate, boolean, alwaysOpen:true", function() {
test("activate, boolean, collapsible:false", function() {
var ac = $('#list1').accordion().accordion("activate", 2);
state(ac, 0, 0, 1);
ac.accordion("activate", -1);
@@ -102,7 +102,7 @@ test("handle click on header-descendant", function() {
test("active:false", function() {
$("#list1").accordion({
active: false,
alwaysOpen: false
collapsible: true
});
equals( $("#list1 a.selected").size(), 0, "no headers selected" );
});
@@ -111,7 +111,7 @@ test("accordionchange event, open closed and close again", function() {
expect(8);
$("#list1").accordion({
active: false,
alwaysOpen: false
collapsible: true
})
.one("accordionchange", function(event, ui) {
equals( ui.oldHeader.size(), 0 );
@@ -19,6 +19,14 @@ $.widget("ui.accordion", {
var o = this.options, self = this;
this.running = 0;

// if the user set the alwaysOpen option on init
// then we need to set the collapsible option
// if they set both on init, collapsible will take priority
if (o.collapsible == $.ui.accordion.defaults.collapsible &&
o.alwaysOpen != $.ui.accordion.defaults.alwaysOpen) {
o.collapsible = !o.alwaysOpen;
}

if ( o.navigation ) {
var current = this.element.find("a").filter(o.navigationFilter);
if ( current.length ) {
@@ -377,9 +385,9 @@ $.extend($.ui.accordion, {
active: null,
autoHeight: true,
alwaysOpen: true, //deprecated, use collapsible
collapsible: false,
animated: 'slide',
clearStyle: false,
collapsible: false,
event: "click",
fillSpace: false,
header: "> li > :first-child,> :not(li):even",

0 comments on commit 94c16d6

Please sign in to comment.
You can’t perform that action at this time.