2011-07-14 15 views
0

1ページあたり3サイクルあり、1つの例外を除いてすべて正常に動作しています。 3つのスライドのうちの1つに「1/3」のようなものを表示するカウンタがすべて一緒に更新されます。最初のサイクルをスライド2に進めると、他の2つのサイクルのカウンタも同様に増加し、3つとも「2/3」と表示されます。ここに私のコードです:jQueryサイクル・プラグイン:複数のサイクル・インスタンスは独立して動作しますが、カウンタはありません

$('.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で明らかであるが、私はonAfter$this.cycleからサイクルコンテナIDを渡す方法を見つけるように見えることはできません。何か案は?

答えて

0

accepted answer hereのいとこの要素を見つける方法を教えてください。この問題の解決方法を見つけることができました。上記の私のコードで$('.slide-count').html(caption);の代わりに、これは動作します:

$(this).closest(':has(.slide-count)').find('.slide-count').html(caption); 
関連する問題