Jquery循环插件

时间:2009-11-14 12:54:05

标签: jquery plugins cycle

我一直在使用jquery循环插件(malsup.com/jquery/cycle),它正在按照我的要求完成,除了它似乎没有将第一张幻灯片识别为幻灯片。我正在使用onAfter函数来打开和关闭下一个/ prev链接 显示第1页?但是下一个链接在第2页上依然存在 (当你期望prev链接出现时),尽管如此 页面计算正确,第2页显示为第1页,共7页 作为真实的页面之一)。你可以看到我的意思:

http://www.nottingham.ac.uk/~ttzelrn/ma-tesol/module1/unit1/index.php

div的结构非常复杂,但我认为这听起来很合适 我说,插件正在计算div。

以下代码:

$(document).ready(function() {
      $('#cycle-content').cycle({
      fx:     'none',
      prev:   '#prev',
      next:   '#next',
      after:   onAfter,
      timeout: 0
      });

function onAfter(curr, next, opts) {
var index = opts.currSlide;
$('#prev')[index == 0 ? 'hide' : 'show']();
$('#next')[index == opts.slideCount - 1 ? 'hide' : 'show']();

var caption = 'Page ' + (opts.currSlide + 1) + ' of ' +
opts.slideCount;
$('#caption').html(caption);
}

});

我真的很感激任何帮助。

马修

1 个答案:

答案 0 :(得分:1)

你没有在回调后增加currSlide。尝试这样的事情:

$(document).ready(function() {
      $('#cycle-content').cycle({
      fx:     'none',
      prev:   '#prev',
      next:   '#next',
      after:   onAfter,
      timeout: 0
      });
});

function onAfter(curr, next, opts) {
    var index = opts.currSlide;
    $('#prev')[index == 0 ? 'hide' : 'show']();
    $('#next')[index == opts.slideCount - 1 ? 'hide' : 'show']();
    opts.currSlide++;
    var caption = 'Page ' + (opts.currSlide) + ' of ' + opts.slideCount;
    $('#caption').html(caption);
}