Плагин Jquery Cycle - PullRequest
       9

Плагин Jquery Cycle

0 голосов
/ 14 ноября 2009

Я использовал плагин цикла jquery (malsup.com/jquery/cycle), и он работает именно так, как я хочу, за исключением того, что он, похоже, не распознает первый слайд как слайд первый. Я использую функцию onAfter, чтобы включать и выключать ссылки по следующему / предыдущему показать страницу 1 из? но следующая ссылка сохраняется сама по себе на странице 2 (когда вы ожидаете появления предыдущей ссылки) и, хотя страницы считаются правильно, страница 2 отображается как страница 1 из 7 как реальная страница первая). Вы можете видеть, что я имею в виду:

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

Структура div довольно сложна, но я думаю, что это звук и, как Я говорю, плагин считает divs хорошо.

Код ниже:

$(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 Ответ

1 голос
/ 14 ноября 2009

Вы не увеличиваете 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);
}
...