0

我正在构建一个显示不同位置的应用程序。

我想在单击显示更多按钮时一次显示 10 个位置。目前,我第一次可以显示 10 个项目,但第二次单击所有项目都显示,而i want consecutive 10 items each time i click显示更多按钮。

<?php
    echo 
    "<script>
     $('ul')
     .find('li:gt(10)')
     .hide()
     .end()
     .append(
     $('<li><a>Show More</a></li>').click(function(){
     $(this).siblings(':hidden').show().end().remove()
     }));
    </script>";
    ?>
4

1 回答 1

0

您通常有两种选择。你的一部分 HTML 可能也有帮助。

1)只搜索十个隐藏元素,你现在总是搜索 10 个元素(所以它们总是相同的)。如果隐藏的元素是 li 你可以这样做:

<?php
echo 
"<script>
 $('ul')
 .find('li:hidden:gt(10)')
 .hide()
 .end()
 .append(
 $('<li><a>Show More</a></li>').click(function(){
 $(this).siblings(':hidden').show().end().remove()
 }));
</script>";
?>

2) 将显示项目的实际数量存储在某处,并在每次单击按钮显示更多时添加 10。

<?php
echo 
"<script>
 var itemsDisplayed = 10;
 $('ul')
 .find('li:gt(itemsDisplayed)')
 .hide()
 .end()
 .append(
 $('<li><a>Show More</a></li>').click(function(){
 itemsDisplayed = itemsDisplayed + 10;
 $(this).siblings(':hidden').show().end().remove()
 }));
</script>";
?>
于 2013-10-04T11:40:47.697 回答