【发布时间】:2017-01-26 09:24:22
【问题描述】:
在这个问题的帮助下,我得到了引导分页:How do I program bootstrap-3 pagination to work with simple HTML content
现在,我有 29 页,我想总是隐藏一些页面,只显示,比如说 8 个。
例如当您查看第 1 页时,您会看到: 1, 2, 3, 4, 5, ... 27, 28, 29
我在这里查看了这个但无法让它工作,因为我不知道如何将它与我拥有的这些 html“单元”集成:http://angular-ui.github.io/bootstrap/#/pagination
那么有没有一种方法可以调整我拥有的 HTML 和 JavaScript 代码,以使导航工作并看起来像我想要的那样?还是我真的必须转向这种角度分页?
这是我的 HTML - 我只是重复每个页面的单位(即 29 次)
<!-- pagination navigation -->
<div class="container">
<div class="col-lg-12 smooth">
<nav class="text-center">
<ul class="pagination">
<li class="pag_prev">
<a href="#gohere" aria-label="Previous">
<span aria-hidden="true">«</span>
</a>
</li>
<li class="pag_next">
<a href="#gohere" aria-label="Next">
<span aria-hidden="true">»</span>
</a>
</li>
</ul>
</nav>
</div>
</div>
<!-- pagination navigation ends -->
<!-- one unit start -->
<div class="container2">
<div class="content">
<div class="col-lg-7" id="gohere">
<br>
<a href="image.jpg" class="thumbnail" data-lightbox="image3">
<img src="image.jpg"
alt="text" class="image2"></a>
</div>
<div class="jumbotron">
<div class="col-lg-5">
text
</div>
</div>
</div>
</div>
<!-- one unit end -->
下面是使导航工作的底部脚本:
$( document ).ready(function() {
pageSize = 1;
pagesCount = $(".content").length;
var currentPage = 1;
/////////// PREPARE NAV ///////////////
var nav = '';
var totalPages = Math.ceil(pagesCount / pageSize);
for (var s=0; s<totalPages; s++){
nav += '<li class="numeros"><a href="#gohere">'+(s+1)+'</a></li>';
}
$(".pag_prev").after(nav);
$(".numeros").first().addClass("active");
//////////////////////////////////////
showPage = function() {
$(".content").hide().each(function(n) {
if (n >= pageSize * (currentPage - 1) && n < pageSize * currentPage)
$(this).show();
});
}
showPage();
$(".pagination li.numeros").click(function() {
$(".pagination li").removeClass("active");
$(this).addClass("active");
currentPage = parseInt($(this).text());
showPage();
});
$(".pagination li.pag_prev").click(function() {
if($(this).next().is('.active')) return;
$('.numeros.active').removeClass('active').prev().addClass('active');
currentPage = currentPage > 1 ? (currentPage-1) : 1;
showPage();
});
$(".pagination li.pag_next").click(function() {
if($(this).prev().is('.active')) return;
$('.numeros.active').removeClass('active').next().addClass('active');
currentPage = currentPage < totalPages ? (currentPage+1) : totalPages;
showPage();
});
});
if (!document.location.hash){
document.location.hash = 'gohere';
}
【问题讨论】:
标签: javascript html twitter-bootstrap pagination