JQuery Аккордеонная Авто Высота вопроса
Я использую JQuery Accordion. У меня есть эта страница здесь: http://www.hauppauge.com/site/support/support_colossus.html
Что происходит, так это то, что Auto Height загружается некоторое время, прежде чем оно загрузится, под содержимым много пустого пространства. Когда он, наконец, загрузится, высота будет увеличиваться до более длинного, а затем до нужной высоты содержимого. Есть ли способ для этого быть бесшовным? Я просто хочу иметь возможность щелкнуть вкладку Аккордеон и сделать так, чтобы она плавно расширялась до точной высоты содержимого.
Обновление 08/08/2014:
использование heightStyle: "content"
если вы используете версию 1.9 и выше (ответ Tarun Gupta)
использование autoHeight: false
для 1.8 и ниже (ответ от iappwebdev)
5 ответов
Так почему бы тебе просто не установить autoheight
ложно?
$( ".selector" ).accordion({ autoHeight: false });
http://jqueryui.com/demos/accordion/
РЕДАКТИРОВАТЬ
Глядя на ваш комментарий:
// Accordion
$("#accordion").accordion({ header: "h3" });
$("#accordion").accordion({ collapsible: true });
$("#accordion").accordion({ autoHeight: false, navigation: true });
Вы инициализируете аккордеон, а затем добавляете в него дополнительные параметры. Зачем ты это делаешь? Значение по умолчанию для autoHeight
является true
Таким образом, каждая вкладка получает фиксированную высоту. Поместите все варианты в один звонок:
// Accordion
$("#accordion").accordion({
header: "h3",
collapsible: true,
autoHeight: false,
navigation: true
});
РЕДАКТИРОВАТЬ
Что касается вашего второго комментария:
Взгляните на http://jqueryui.com/demos/accordion/. Вы можете увидеть эту опцию h3
установлен по умолчанию, поэтому вам не нужно устанавливать его при вызове.
И вы получите ответ на свой вопрос здесь: JQuery аккордеон не работает без тегов h3.
Очень важно пройти через API jQuery, чтобы улучшить свои знания. Для API jQuery перейдите по http://api.jquery.com/, а для пользовательского интерфейса jQuery - по адресу http://jqueryui.com/demos/. Если у вас есть еще вопросы, не стесняйтесь их задавать после того, как вы попытались решить свою проблему и после того, как вы провели некоторое исследование.
Если все это ответило на ваш вопрос, отметьте его как правильный ответ.
Ты должен использовать
$("#accordion").accordion({
heightStyle: "content"
});
Он установит высоту в соответствии с вашим содержанием. и не будет использовать пустое пространство в качестве высоты.
$("#accordion").accordion({
heightStyle: "content"
});
Это работает в новой версии, это сработало для меня!!!
Если пока ничего не работает, просто измените размер jQuery Accordion contentElement
- это называется data-content
по умолчанию, если вы не настроили это иначе:
$('.accordion').find('[data-content]').resize();
Это также будет работать, если вы хотите изменить размер Аккордеона после динамической загрузки ваших данных.
Это сработало для меня.
$( ".accordion" ).accordion({
autoHeight: false,
collapsible: true,
navigation: true
});