Отображение одного числа jQuery .each () - PullRequest
0 голосов
/ 26 марта 2011

Кто-нибудь знает, что я должен изменить в этом плагине, который отображает одно число (например, "1/3")?

http://slidesjs.com

Я изменил эту строку:

$('.' + option.paginationClass, elem).append('<li><a href="#'+ number +'">'+ (number+1) +'</a></li>');

и изменить на это:

$('.' + option.paginationClass, elem).append('<li><a href="#'+ number +'">'+ (number+1) +'/'+ total +'</a></li>');

и теперь показывает мне: "1/3 2/3 3/3".

1 Ответ

0 голосов
/ 26 марта 2011

Итак ... Я полагаю, что вы хотите отобразить только номер текущей страницы в слайд-шоу. Так что, если у вас есть 5 слайдов, и вы находитесь на странице 3, то вы увидите только «3/5». Правильно?

Итак, отвечая на этот вопрос, вот цикл original , окружающий код, который вы разместили выше.

control.children().each(function(){
    $('.' + option.paginationClass, elem).append('<li><a href="#'+ number +'">'+ (number+1) +'</a></li>');
    number++;
});

Однако, чтобы отобразить только текущую страницу, на которой мы находимся, нам нужно добавить условный оператор, чтобы отобразить только одну страницу ...

control.children().each(function(){
//Use a conditional statement to display only the current page
//Have jQuery find the slide which is not currently hidden from view
    if ($(this).css('display') == "block") {
        $('.' + option.paginationClass, elem).append('<li><a href="#'+ number +'">'+ (number+1) +'</a></li>');
        return false;
//If the element is not visible we still need to count up, in order to account for this page
    } else {
        number++;
    }
});

Я признаю, этот код совсем не тестировался, но он должен работать. Единственное, чего я не знаю, так это того, будет ли оно автоматически обновляться при прокрутке слайдов.

Надеюсь, это поможет,
spryno724

...