mirror of
https://github.com/jquery/jquery-ui.git
synced 2024-11-21 11:04:24 +00:00
accordion: fixed incosistent accordionchange event arguments (http://dev.jquery.com/ticket/3111)
This commit is contained in:
parent
d1b099907d
commit
30952e6b3f
@ -99,4 +99,34 @@ test("handle click on header-descendant", function() {
|
|||||||
state2(ac, 0, 1, 0);
|
state2(ac, 0, 1, 0);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test("active:false", function() {
|
||||||
|
$("#list1").accordion({
|
||||||
|
active: false,
|
||||||
|
alwaysOpen: false
|
||||||
|
});
|
||||||
|
equals( $("#list1 a.selected").size(), 0, "no headers selected" );
|
||||||
|
});
|
||||||
|
|
||||||
|
test("accordionchange event, open closed and close again", function() {
|
||||||
|
expect(8);
|
||||||
|
$("#list1").accordion({
|
||||||
|
active: false,
|
||||||
|
alwaysOpen: false
|
||||||
|
})
|
||||||
|
.one("accordionchange", function(event, ui) {
|
||||||
|
equals( ui.oldHeader.size(), 0 )
|
||||||
|
equals( ui.oldContent.size(), 0 )
|
||||||
|
equals( ui.newHeader.size(), 1 )
|
||||||
|
equals( ui.newContent.size(), 1 )
|
||||||
|
})
|
||||||
|
.accordion("activate", 0)
|
||||||
|
.one("accordionchange", function(event, ui) {
|
||||||
|
equals( ui.oldHeader.size(), 1 )
|
||||||
|
equals( ui.oldContent.size(), 1 )
|
||||||
|
equals( ui.newHeader.size(), 0 )
|
||||||
|
equals( ui.newContent.size(), 0 )
|
||||||
|
})
|
||||||
|
.accordion("activate", 0);
|
||||||
|
});
|
||||||
|
|
||||||
})(jQuery);
|
})(jQuery);
|
||||||
|
@ -201,12 +201,11 @@ function clickHandler(event) {
|
|||||||
// find elements to show and hide
|
// find elements to show and hide
|
||||||
var toShow = clicked.next(),
|
var toShow = clicked.next(),
|
||||||
toHide = options.active.next(),
|
toHide = options.active.next(),
|
||||||
//data = [clicked, options.active, toShow, toHide],
|
|
||||||
data = {
|
data = {
|
||||||
options: options,
|
options: options,
|
||||||
newHeader: clicked,
|
newHeader: clickedActive && !options.alwaysOpen ? $([]) : clicked,
|
||||||
oldHeader: options.active,
|
oldHeader: options.active,
|
||||||
newContent: toShow,
|
newContent: clickedActive && !options.alwaysOpen ? $([]) : toShow,
|
||||||
oldContent: toHide
|
oldContent: toHide
|
||||||
},
|
},
|
||||||
down = options.headers.index( options.active[0] ) > options.headers.index( clicked[0] );
|
down = options.headers.index( options.active[0] ) > options.headers.index( clicked[0] );
|
||||||
@ -218,7 +217,7 @@ function clickHandler(event) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
function findActive(headers, selector) {
|
function findActive(headers, selector) {
|
||||||
return selector != undefined
|
return selector
|
||||||
? typeof selector == "number"
|
? typeof selector == "number"
|
||||||
? headers.filter(":eq(" + selector + ")")
|
? headers.filter(":eq(" + selector + ")")
|
||||||
: headers.not(headers.not(selector))
|
: headers.not(headers.not(selector))
|
||||||
|
Loading…
Reference in New Issue
Block a user