2012-02-12 42 views
1

我正在使用jQuery Cycle插件。jQuery Cycle插件「之前」事件不工作?

我在幻燈片下面有一個「當前#/總#」計數器類型的東西。我在每次轉換後更新「當前編號」。 我正在使用「after」回調事件成功,但「before」事件似乎不適用於第一次轉換。我想當前#將更改爲之前的幻燈片圖片轉換爲下一張,而不是之後的轉換。 有沒有人有過這個問題?

我有以下代碼:

slideshow.cycle({ 
    timeout: 6000, 
    next: '#nextImage', 
    prev: '#prevImage', 
    after: setCurrent 
}); 

function setCurrent(curr,next,opts) { 
    $('#imageNumber').html(opts.currSlide + 1); 
} 

[編輯]

我是能夠通過使用以下代碼來解決這樣的:後

slideshow.cycle({ 
    timeout: 6000, 
    next: '#nextImage', 
    prev: '#prevImage', 
    before: setCurrent 
}); 

function setCurrent() { 
    var image = $(this); 
    $('#imageNumber').html(image.index() + 1); 
} 

回答

1

的 '前'/' '回調方法沒有參數。在方法的上下文中(即setCurrent),您可以使用'this'作爲要呈現的項目。

參考:http://jquery.malsup.com/cycle/int2.html

所以,你需要做的事情有點像:

function setCurrent() { 
    $('#imageNumber').html(this.id + 1); 
} 

注:我不知道你的代碼的其餘部分,所以你可能需要去適應......

+0

你的答案幫助我發現如何解決它。 我會在下面發表我的答案。 – Justin 2012-02-12 04:05:05

+0

感謝您的更新後的帖子。 – JScoobyCed 2012-02-12 07:01:40