jQuery手风琴自动高度问题


76

我正在使用JQuery手风琴。我在这里有此页面:http : //www.hauppauge.com/site/support/support_colossus.html#tabs-6

发生的情况是,自动高度加载需要花费一些时间,在加载之前,内容下方有很多空白。最终加载时,高度将扩展到更长,然后捕捉到内容的正确高度。有没有办法使之无缝?我只希望能够单击“手风琴”选项卡并将其平滑扩展到内容的确切高度。

2014年8月8日更新:

使用heightStyle: "content",如果你正在使用1.9版及更高版本塔伦的答案)

使用autoHeight: false1.8和更低(iappwebdev的答案)


您正在将高度施加到274某个地方。尝试删除它或至少减少它。
Imdad 2012年

我只是搜索了此内容,却不知道该在哪里。你怎么看?谢谢!
2012年

检查Firebug。默认高度274应该不会太大
Imdad

Answers:


57

那么,为什么不设置autoheight为false?

$( ".selector" ).accordion({ autoHeight: false });

http://jqueryui.com/demos/accordion/#option-autoHeight

编辑

看你的评论:

// Accordion
$("#accordion").accordion({ header: "h3" });
$("#accordion").accordion({ collapsible: true });
$("#accordion").accordion({ autoHeight: false, navigation: true });

您正在初始化手风琴,然后向它添加更多选项。你为什么要这么做?默认值autoHeighttrue,所以每片获得一个固定的高度。将所有选项放在一个电话中:

// Accordion
$("#accordion").accordion({
    header: "h3",
    collapsible: true,
    autoHeight: false,
    navigation: true 
});



编辑

关于您的第二条评论:

看看http://jqueryui.com/demos/accordion/#option-header。您可以看到该选项h3是默认设置的,因此您不必在通话中进行设置。

您将在此处得到问题的答案:没有h3标签,JQuery手风琴将无法工作

通过jQuery API来提高您的知识非常重要。对于jQuery API,请访问http://api.jquery.com/;对于jQuery UI,请访问http://jqueryui.com/demos/。如果您还有其他问题,请尝试解决问题以及进行一些研究后立即提出。

如果所有这些都回答了您的问题,请将其标记为正确答案。


我做到了,这就是我所拥有的://手风琴$(“#accordion”)。accordion({header:“ h3”}); $(“#accordion”)。accordion({可折叠:true}); $(“#accordion”)。accordion({autoHeight:false,navigation:true});
2012年

可行!非常感谢!如您所知,我正在学习。非常感谢您的帮助!这让我发疯。您是否会知道为什么需要标题:“ h3”?没有它,它将无法正常工作。再次感谢!
2012年

感谢您的API链接,我将仔细研究。我对演示链接很熟悉,那是我从中获取很多代码的地方。我想让我感到困惑的是,我也从该页面上获取了代码[ hauppauge.com/jquery/index.html][1] [1]:从JQuery下载的hauppauge.com/jquery/index.html,在那里他们使用了h3 。我对此并不陌生,但一定会仔细阅读API页面。再次感谢!
2012年

API中未记录{autoHeight:false}选项:api.jqueryui.com/accordion谢谢!
Marc Maxmeister 2015年

164

你应该使用

$("#accordion").accordion({ 

heightStyle: "content" 

});

它将根据您的内容设置高度。并且不会使用空格作为高度。


8
竖起大拇指。简短而简单的一点是,它是
可行的

5
谢谢,尝试过autoHeight: false...但是什么也没做,这可以解决问题
Pierre

1
这是最好的答案!竖起大拇指-更改接受的答案TA!
NFlows

1
只要您使用jQuery UI 1.9或更高版本,这就是最佳答案,正如OP在他的编辑中提到的那样。
BobRodes

1
ew,节省了大量时间。谢谢。做得完美。
马卡兰德鬃毛

15
$("#accordion").accordion({ 

heightStyle: "content" 

});

这在新版本中工作,对我有用!!!


0

这对我有用。

$( ".accordion" ).accordion({ 
 autoHeight: false,
 collapsible: true,
 navigation: true 
 });

0

如果到目前为止没有任何效果,只需调整jQuery手风琴的大小contentElement-data-content默认情况下会调用它,除非您对其进行了不同的配置:

$('.accordion').find('[data-content]').resize();

如果要在动态加载数据后调整手风琴的大小,这也将起作用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.