Плагин jQuery Cycle: несколько экземпляров цикла работают независимо, но их счетчики не работают - PullRequest
0 голосов
/ 14 июля 2011

У меня 3 цикла на страницу, и все они отлично работают, за одним исключением.Их счетчики, которые отображают такие вещи, как «1/3» для 1 из 3 слайдов, обновляются вместе.Если я перемещаю первый цикл к слайду 2, счетчики для других двух циклов также увеличиваются, так что все три отображают «2/3».Вот мой код:

$('.slides').each(function() {
    var $this = $(this), $ss = $this.closest('.slide-container');
    var prev = $ss.find('a.slide-control-previous'), next = $ss.find('a.slide-control-next');
    $this.cycle({
        fx: 'scrollHorz',
        pause: 1,
        prev: prev,
        next: next,
        speed: 1000,
        after: onAfter
    });
});
function onAfter(curr,next,opts) {
    var caption = '<span>' + (opts.currSlide + 1) + '</span>/' + opts.slideCount;
    $('.slide-count').html(caption);
}

Проблема, очевидно, в function onAfter, но я не могу найти, как передать идентификатор контейнера цикла из $this.cycle в onAfter.Есть идеи?

1 Ответ

0 голосов
/ 02 августа 2011

Ответ здесь о том, как найти элементы двоюродного брата , помог мне найти решение этой проблемы.Вместо $('.slide-count').html(caption); в моем коде выше это работает:

$(this).closest(':has(.slide-count)').find('.slide-count').html(caption);
...