如何更改jQuery accordion选项卡的默认状态

时间:2013-11-04 18:31:40

标签: jquery-ui jquery-ui-accordion

我正在使用jQuery accordion,但默认情况下,第一个手风琴标签已在页面加载时展开。我尝试将aria-selected="false"添加到内联html中,我尝试在jquery-ui.js中的第6345行更改/删除此内容,但第一个标签仍在展开:

// make sure at least one header is in the tab order
if ( !this.active.length ) {
    this.headers.eq( 0 ).attr( "tabIndex", 0 );
} else {
    this.active.attr({
        "aria-selected": "true",
        tabIndex: 0
    })
    .next()
        .attr({
            "aria-expanded": "true",
            "aria-hidden": "false"
        });
}

任何指针?

编辑:使用以下答案的新小提琴:http://jsfiddle.net/pfeff/WNdRe/1/

1 个答案:

答案 0 :(得分:1)

Accordion jQuery-ui通过更改CSS而不是内容类来处理选项卡可见性。在手风琴初始化之后将其放在代码中:

$("#accordion div.ui-accordion-content").css({"display": "none"});// hide content block

UPD:

$(...).accordion({ collapsible: true, active: false });

UPD 2:

更改原始ui元素的原始行为的最佳方法 - 创建自己的插件或小部件:)

http://jsfiddle.net/R8J5p/1/

现在您可以像$(...).myAccordion();

一样使用它