Проблема с загрузкой списка jQuery

0

Я использую эту функцию для "загрузки большего количества элементов списка" по мере необходимости.

Загрузка большей функции, которую я использую: http://jsfiddle.net/cse_tushar/6FzSb/2/

Я заполняю свой список PHP. Моя проблема в том, что все элементы списка отображаются при загрузке страницы. Когда я нажимаю на загрузку больше, функциональность начинает работать, и я могу загружать больше или загружать меньше. На загрузке страницы должно отображаться только 3 элемента списка (x = 3).

Любые идеи, как я могу это решить?

Заранее спасибо!

Код списка:

<?php include('comments.php'); 

                /*
                /   Output the comments one by one:
                */
                foreach($comments as $c){

                    echo $c->markup();
                }

                ?>

comments.php (упрощенный):

    class Comment
    {
public function markup()
    {

            return '<li>$text</li>' };

};

JS нагрузки больше:

$(document).ready(function () {
    size_li = $("#myList li").size();
    x=3;
    $('#myList li:lt('+x+')').show();
    $('#loadMore').click(function () {
        x= (x+5 <= size_li) ? x+5 : size_li;
        $('#myList li:lt('+x+')').show();
         $('#showLess').show();
        if(x == size_li){
            $('#loadMore').hide();
        }
    });
    $('#showLess').click(function () {
        x=(x-5<0) ? 3 : x-5;
        $('#myList li').not(':lt('+x+')').hide();
        $('#loadMore').show();
         $('#showLess').show();
        if(x == 3){
            $('#showLess').hide();
        }
    });
});
Теги:

1 ответ

0

Чтобы вывести только 3 раза, вам нужно установить счетчик (простую переменную), чтобы подсчитать, сколько раз вы печатали разметку. Вы можете сделать что-то подобное для достижения этой цели:

$i = 0;
foreach($comments as $c){
  $i++;
  if($i < 4) {
    echo $c->markup();
  }
 }
  • 0
    Привет RPM, прошу прощения, я не ясно. Я поправил свои вопросы. Я хочу, чтобы все элементы списка отображались, но я хочу, чтобы только первые 3 отображались с помощью функции JS Load More.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню