如果溢出,则更改元素高度

时间:2011-10-17 02:00:02

标签: javascript jquery html css jquery-ui-accordion

我正在使用jQuery,我有一个手风琴小部件。我动态地将内容放在每个容器中。当我将新内容放入新控件中时,我希望手风琴能够增长(高度增加)。我的手风琴控制看起来像:

enter image description here

我将我的项目手风琴小部件初始化为:

$("#accordion").accordion({
                autoHeight: false,
                navigation: true,
                collapsible: true,
                fillSpace: true

            });

当我动态地将HTML放在Ajax手风琴中时,您可以看到元素开始溢出。我不想看滚动条。

所以我在考虑类似于:

somehow with JavaScript see if an element on the dom is overflowing (has the scroll bar)

if it does then increase it's height by 10 px until it does not overflow. 

我知道我可以设置一个固定高度,但我不知道我将提前在每个手风琴中放置多少html内容。你们对如何处理这个溢出的问题提出了什么建议?

修改

如果我可以用CSS解决这个问题,那将是很好的,因为我动态地构建了手风琴小部件。

2 个答案:

答案 0 :(得分:1)

添加完内容后,请致电

$("#accordion").accordion( "resize" );

答案 1 :(得分:0)

我一直在努力,我有:

function removeOverflow(element){
     var newHeight = $(element).height() + element.offsetHeight; 
    $(element).height(newHeight+"px")  // set the hight of the overflowing element
}