Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Множество jcarousellite на странице (https://javascript.ru/forum/jquery/28100-mnozhestvo-jcarousellite-na-stranice.html)

Mixanik 07.05.2012 17:12

Множество jcarousellite на странице
 
Пошёл топорным путём - каждой карусели присваивать свой порядковый айди. В вызове получается что-то такое:
$(document).ready(function() {
$("#car1").jCarouselLite({
btnPrev: "#prev1",
btnNext: "#next1",
visible: 1,
circular: true
});
$("#car2").jCarouselLite({
btnPrev: "#prev2",
btnNext: "#next2",
visible: 1,
circular: true
});
...
});

Как видно, в каждом блоке меняется только индекс id. Можно ли как-то сократить скрипт до одного блока, применяемого ко всем тэгам с определённым диапазоном порядкового номера?

Или кто-то посоветует, как вообще избавиться от необходимости каждой карусели задавать уникальный id? В оригинальном виде скрипта при вызове более одной карусели кнопки "вперед-назад" прокручивают сразу все карусели.
Вот нынешняя конструкция:
<div class="widget">
<a id="prev1" class="previous" href="#"></a>
<div id="car1">
галерея в виде списка
</div>
<a id="next1" class="next" href="#"></a>
</div>

Простите за нубизм, заранее спасибо.

Libida 27.09.2012 19:23

Для меня работает следующий вид:

HTML:
<div class="listBox productList carouselBox">
<div class="arrow left"></div>
<div class="jCarouselLite" style="visibility: visible;">...</div>
<div class="arrow right"></div>
</div>

JS:
$('.jCarouselLite').each(function() {
$(this).jCarouselLite({
btnNext: $(this).parent().find(".arrow.right"),
btnPrev: $(this).parent().find(".arrow.left"),
circular: false,
visible: 4
});
});


Часовой пояс GMT +3, время: 02:54.