2014-10-20 60 views
0

我有大量的div全部显示在这个页面上(现在大约25个),并且每天越来越多地被添加。我想知道是否有一个易于使用的jQuery库来利用分页,或者如果有一个非常简单的脚本,我可以编写这些脚本来分解这些,而无需手动制作所有额外的页面。这是我的HTML(非常基本和简单)。甚至可能使用Ajax方法?我不是很熟悉,虽然编写Ajax,这就是为什么我在这里创建分页

<section class="stories"> 
    <h2>The Stories</h2> 

    <div class="story"> 
     <h4>Title</h4> 
     <p>Story info</p> 
    </div> 

    <div class="story"> 
     <h4>Title</h4> 
     <p>Story info</p> 
    </div> 

    <div class="story"> 
     <h4>Title</h4> 
     <p>Story info</p> 
    </div> 

</section> 
+2

现在创建一个分页功能对你来说,应该是5分钟左右 – DrRoach 2014-10-20 14:13:57

回答

1

这听起来像你正在使用的表格数据,在这种情况下,表可能是最好的办法来。无论如何,由于您对流程并不十分熟悉,因此不使用库的理由绝对不为零。我想强烈推荐DataTables.js

+1

有没有真正任何理由使用一个表,这个信息,因为所有它是一个标题,然后的故事。是否有更好的图书馆专注于分页? – rklitz 2014-10-20 14:11:49

+0

这是一个整洁的图书馆,并做我正在寻找,但这张桌子看起来很糟糕,所有的故事有不同的长度。我只是无法描绘一张使用这种布局的桌子 – rklitz 2014-10-20 14:14:01

+0

@ user3532666是的,他们是几个分页库,lolka_bolka的答案提供了一些链接。我仍然建议看看这个表。除非你打算有一个无序列表。 – charles 2014-10-20 14:21:05

0

我认为为自己写一篇文章并不是一件大事。我从来没有见过一个库或插件这样的,但采取了一枪:http://www.sitepoint.com/10-jquery-pagination-plugins/

我认为,这可以这样进行:

需要的项目数显示。 需要项目的数量。 需要你有多少页。 需要当前页面。

将要显示的项目数量存储到变量中。 计数,你有多少物品。 检查网址,是否有像pageNum或其他什么的参数,告诉你什么是当前页面。 随着maxpage/itemsonpage的划分将会给你,你有多少页。 使用当前页面和itemsonpate可以计算出发点。

你可以使用hases来存储当前页面是什么。

1

非常粗糙的版本,但我没有太多时间和核心工作,有一个或两个调整,如范围验证需要添加,但它应该工作。

var start = 0; 
var ending = 5; 
var jump = 5; 
var count = 0; 
var stories = $('.story'); 
function paginate() { 
    stories.show(); 
    $.each(stories, function() { 
     if(count > ending && count < start) { 
      $(this).hide(); 
     } 
     count++; 
    }); 
} 

$('#next').on('click', function() { 
    start += jump; 
    ending += jump; 
    paginate(); 
}); 

$('#prev').on('click', function() { 
    start -= jump; 
    ending -= jump; 
    paginate(); 
}); 

paginate(); 
+0

如果有人可能需要五分钟来编辑这个,所以这是很好的证明,将不胜感激! – DrRoach 2014-10-20 14:40:25