2011-01-29 1 views
1

Я использую библиотеку jcarousel (http://sorgalla.com/projects/jcarousel/) и хотел использовать вертикальную карусель, но также сделать ее динамически измененной в зависимости от высоты в окне браузера.Создайте динамический jcarousel, который изменяет размер по вертикали

Был пример страницы с горизонтальной карусели, которая растягивалась/уменьшалась, чтобы заполнить ширину, и в результате отобразилось больше/меньше предметов.

http://sorgalla.com/projects/jcarousel/examples/static_callbacks.html

Я взял этот пример страницу и изменить его, чтобы сделать его вертикальную карусель и установить высоту вместо шириных быть%. Вот измененная страница:

http://www.strangeport.com/jcarousel/static_callbacks.html

К сожалению, все это делает создать карусель, которая тянется, чтобы показать все элементы в нем и вызывает браузер для прокрутки.

Я новичок в JQuery, поэтому пытался отладить это с помощью firebug - но с трудностями выяснить, что не так. Любая помощь, которую кто-то может предложить, будет очень признательна. Благодаря!

EDIT: Благодаря решению Маркуса, это то, что я сделал, чтобы исправить это (я редактировал это включить код исправления в более читаемом формате:

FYI для всех, кто хочет использовать это для Jcarousel (я использовал это в страницу изменение размера и задокументировать готовую функцию).

var galleryHeight = $(window).height() - 170; // just arbitrary offset for testing 
$('.jcarousel-container-vertical').css('height', galleryHeight); 
$('.jcarousel-clip-vertical').css('height', galleryHeight); 

jcarousel должен иметь контейнер и набор высоты клип-контейнера в.

ответ

1

Вы можете использовать jQuery's .css() method для динамического изменения размера контейнера галереи. Вы бы сделали примерно следующее:

$('#myGalleryContainer').css('height', galleryHeight); 
+0

Спасибо! У меня есть немного больше настроек, чтобы вычислить точную высоту, которая мне нужна относительно страницы. Но это отлично работает - спасибо! – jonathanq