jQuery UI手风琴 - 每个面板适合内容

时间:2011-07-11 17:34:29

标签: javascript html css jquery-ui accordion

我正在使用jQuery UI的Accordion http://jqueryui.com/demos/accordion/,我试图让它适合每个面板内容的高度。

目前的工作方式是适应最大的面板内容,但我希望根据哪个面板打开来调整大小。

另外,有没有办法在默认情况下打开一个面板而不是顶面面板?我想在用户加载页面时打开最下面的面板。

提前致谢!

编辑:我已经尝试将height:auto !important;放在.ui-accordion .ui-accordion-content-active {j}上的jquery-ui.css文件中,但是当关闭手风琴时会导致一个奇怪的问题,另一个正在开放。

4 个答案:

答案 0 :(得分:24)

为了保持最新状态,似乎对于jquery UI版本1.9,autoHeight已被heightStyle取代。 http://api.jqueryui.com/accordion/#option-heightStyle

1.9之后的方法是$( ".selector" ).accordion({ heightStyle: "content"});

autoHeight在大多数情况下仍然可以使用,但是当我使用autoHeight时,我在Chrome和Safari中遇到了困难但在Firefox中遇到了困难:false和我的.ui-accordion-content包含一个高度设置为auto的图像。使用heightStyle可以更好地工作。

答案 1 :(得分:7)

啊,发现他们只是有一个设置! http://jqueryui.com/demos/accordion/#no-auto-height

基本上,就这样做:$( ".selector" ).accordion({ autoHeight: false });

答案 2 :(得分:4)

问题相当陈旧,但现在jQuery可以选择根据内容设置高度。 更多信息请访问:http://api.jqueryui.com/accordion/#option-heightStyl

   $(function () {
            $("#accordion").accordion({
              {heightStyle: "content" }
            });
        });

答案 3 :(得分:1)

这对我有用

$(function () {
        $("#accordion").accordion({
            header: "h3",
            autoFill:true,
            autoHeight: false 
        });
    });