在我的UI中,我有一个类似的 Accordion 设置:

<div id="object_list">
    <h3>Section 1</h3>
    <div>...content...</div>

    // More sections
</div>

Accordion 初次形成时可以正常工作,并且似乎可以针对每个部分中的内容进行很好的调整。但是,如果我随后在.accordion()调用之后(通过ajax)将更多内容添加到 Accordion 中,则该部分的内部最终会溢出。

由于形成的 Accordion 几乎没有内容,因此所有内部div都非常小,因此内容溢出,并且 Accordion 内部带有滚动条,几乎没有可视区域。

我试图将min-height样式添加到object_list div,而内容div却无济于事。将min-height添加到内部divs可以工作,但是却弄乱了 Accordion 的动画,并将其添加到object_list div中绝对没有任何作用。

即使没有足够的内容来填充这些部分,如何从内容部分中获得合理的尺寸?

最佳答案

声明 Accordion 控件div时,可以在div的样式标签中放置一个高度。然后,您可以设置 fillSpace:true 属性,以强制 Accordion 控件填充该div空间,无论如何。这意味着您可以将高度设置为最适合您页面的高度。然后,您可以在添加代码时更改div的高度

如果您希望 Accordion 根据需要动态调整大小以使其包含的内容,可以执行以下技巧posted on the jQuery UI website

//getter
var autoHeight = $( ".selector" ).accordion( "option", "autoHeight" );
//setter
$( ".selector" ).accordion( "option", "autoHeight", false );

这意味着当您选择一个包含大量文本的区域时, Accordion 将对其进行重新计算。

10-05 20:53
查看更多