У меня была та же проблема (CMS - TYPO3, я пытаюсь сделать слайдер с ext. Grideslements). Для меня это решение работает лучше:
var max_height = 0;
$(".anythingslider .contentelement").each(function() {
var h = $(this).height();
if(h > max_height) {max_height = h;}
});
$(".anythingslider-outer").css("height", max_height + "px");
$(".anythingslider").anythingSlider(
'expand': true
);
Что я сделал это: Оберните DIV вокруг anythingslider:
<div class="anythingslider-outer">
<ul class="anythingslider">...</ul>
</div>
Этот внешний контейнер получает высоту, ширина теперь также гибкая. Anythingslider растягивается до размеров этого контейнера (с расширением = true).
Еще лучше это решение JavaScript, который обрабатывает несколько ползунков на одной странице (не только один слайдер):
$("ul.anythingslider").each(function(){
var anythingsliderContainer = $(this).closest(".anythingslider-outer");
anythingsliderContainer.css("height", 0);
anythingsliderContainer.find("ul.anythingslider > li").each(function(){
if($(this).height() > anythingsliderContainer.height()){
anythingsliderContainer.css("height", $(this).height());
}
});
});
$('ul.anythingslider').anythingSlider({
'expand': true
});
Нет, это не поможет. Но все равно спасибо. Мой код правильно устанавливает высоту, но кажется, что AnythingSlider игнорирует высоту, если я задал ее таким образом. Если высота устанавливается в файле CSS, тогда она работает, но мне нужно установить ее динамически. Это странно! – horace