pageGroup.js實(shí)現(xiàn)分頁(yè)功能
本文實(shí)例為大家分享了pageGroup.js實(shí)現(xiàn)分頁(yè)功能的具體代碼,供大家參考,具體內(nèi)容如下
1.html頁(yè)面
引入
<link rel="stylesheet" type="text/css" href="/stylesheets/pageGroup.css" > <script src="/javascripts/web/pageGroup.js" type="text/javascript"></script>
<div id="pageGro" class="cb">
{{if maxPage>0}}//總頁(yè)數(shù)
<div class="pageUp">上一頁(yè)</div>
<div class="pageList">
<ul>
</ul>
</div>
<div class="pageDown">下一頁(yè)</div>{{/if}}
<div id="countPage" style="display:none">{{maxPage}}</div>//總頁(yè)數(shù)
<div id="nowPage" style="display:none">{{page}}</div>//當(dāng)前頁(yè)
<div id="title" style="display:none">{{title}}</div>//標(biāo)題
</div>
2.pageGroup.css
/* CSS Document */
/*分頁(yè)*/
#pageGro{ width:400px; height:25px; margin:0px auto; padding-top:30px;}
#pageGro div,#pageGro div ul li{ font-size:12px; color:#999; line-height:23px; float:left; margin-left:5px;}
#pageGro div ul li{ width:22px; text-align:center; border:1px solid #999; cursor:pointer;}
#pageGro div ul li.on{ color:#fff; background:#3c90d9; border:1px solid #3c90d9;}
#pageGro .pageUp,#pageGro .pageDown{ width:63px; border:1px solid #999; cursor:pointer;}
#pageGro .pageUp{ text-indent:23px; background:url(/images/pageUp.png) 5px 7px no-repeat;}
#pageGro .pageDown{ text-indent:5px; background:url(/images/pageDown.png) 46px 6px no-repeat;}
3.pageGroup.js
// JavaScript Document
$(function(){
//根據(jù)總頁(yè)數(shù)判斷,如果小于5頁(yè),則顯示所有頁(yè)數(shù),如果大于5頁(yè),則顯示5頁(yè)。根據(jù)當(dāng)前點(diǎn)擊的頁(yè)數(shù)生成
var maxPage=jQuery("#countPage").text();
var nowPage=jQuery("#nowPage").text();
var index=parseInt(nowPage);//當(dāng)前頁(yè)
var title=jQuery("#title").text();
var pageCount =parseInt(maxPage) ;//模擬后臺(tái)總頁(yè)數(shù)
//生成分頁(yè)按鈕
if(pageCount>5){
page_icon(1,5,0);
pageGroup(index,pageCount);
}else{
//alert("66");
page_icon(1,pageCount,0);
pageGroup(index,pageCount);
}
//點(diǎn)擊分頁(yè)按鈕觸發(fā)
$("#pageGro li").live("click",function(){
if(pageCount > 5){
var pageNum = parseInt($(this).html());//獲取當(dāng)前頁(yè)數(shù)
window.location.href = "/article/search/"+title+"/"+pageNum;
pageGroup(pageNum,pageCount);
}else{
var indexpage=jQuery(this).text();
window.location.href = "/article/search/"+title+"/"+indexpage;
$(this).addClass("on");
$(this).siblings("li").removeClass("on");
}
});
//點(diǎn)擊上一頁(yè)觸發(fā)
$("#pageGro .pageUp").click(function(){
if(pageCount > 5){
if(index>1){
window.location.href = "/article/search/"+title+"/"+(index-1);
}
}else{
if(index > 1){
window.location.href = "/article/search/"+title+"/"+(index-1);
$("#pageGro li").removeClass("on");//清除所有選中
}
}
});
//點(diǎn)擊下一頁(yè)觸發(fā)
$("#pageGro .pageDown").click(function(){
if(pageCount > 5){
if(nowPage<pageCount){
window.location.href = "/article/search/"+title+"/"+(index+1);
}
}else{
if(index< pageCount){
window.location.href = "/article/search/"+title+"/"+(index+1);
$("#pageGro li").removeClass("on");//清除所有選中
}
}
});
});
//點(diǎn)擊跳轉(zhuǎn)頁(yè)面
function pageGroup(pageNum,pageCount){
if(pageCount>5){
switch(pageNum){
case 1:
page_icon(1,5,0);
break;
case 2:
page_icon(1,5,1);
break;
case pageCount-1:
page_icon(pageCount-4,pageCount,3);
break;
case pageCount:
page_icon(pageCount-4,pageCount,4);
break;
default:
page_icon(pageNum-2,pageNum+2,2);
break;
}
}
if(pageCount<5){
switch(pageNum){
case 1:
page_icon(1,pageCount,0);
break;
case 2:
page_icon(1,pageCount,1);
break;
case pageCount-1:
page_icon(1,pageCount,2);
break;
case pageCount:
page_icon(1,pageCount,3);
break;
}
}
if(pageCount==5){
switch(pageNum){
case 1:
page_icon(1,pageCount,0);
break;
case 2:
page_icon(1,pageCount,1);
break;
case pageCount-1:
page_icon(1,pageCount,3);
break;
case pageCount:
page_icon(1,pageCount,4);
break;
default:
page_icon(1,pageNum+2,2);
break;
}
}
}
//根據(jù)當(dāng)前選中頁(yè)生成頁(yè)面點(diǎn)擊按鈕
function page_icon(page,count,eq){
var ul_html = "";
for(var i=page; i<=count; i++){
ul_html += "<li>"+i+"</li>";
}
$("#pageGro ul").html(ul_html);
$("#pageGro ul li").eq(eq).addClass("on");
}
//上一頁(yè)
function pageUp(pageNum,pageCount){
switch(pageNum){
case 1:
break;
case 2:
page_icon(1,5,0);
break;
case pageCount-1:
page_icon(pageCount-4,pageCount,2);
break;
case pageCount:
page_icon(pageCount-4,pageCount,3);
break;
default:
page_icon(pageNum-2,pageNum+2,1);
break;
}
}
//下一頁(yè)
function pageDown(pageNum,pageCount){
switch(pageNum){
case 1:
page_icon(1,5,1);
break;
case 2:
page_icon(1,5,2);
break;
case pageCount-1:
page_icon(pageCount-4,pageCount,4);
break;
case pageCount:
break;
default:
page_icon(pageNum-2,pageNum+2,3);
break;
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 非常不錯(cuò)的一個(gè)JS分頁(yè)效果代碼,值得研究
- 純javascript實(shí)現(xiàn)分頁(yè)(兩種方法)
- 純js分頁(yè)代碼(簡(jiǎn)潔實(shí)用)
- 利用js制作html table分頁(yè)示例(js實(shí)現(xiàn)分頁(yè))
- jsp分頁(yè)顯示的實(shí)現(xiàn)代碼
- js分頁(yè)顯示div的內(nèi)容
- JSP分頁(yè)顯示的實(shí)例代碼
- Angular.js與Bootstrap相結(jié)合實(shí)現(xiàn)表格分頁(yè)代碼
- js表格分頁(yè)實(shí)現(xiàn)代碼
- 一個(gè)實(shí)用的JSP分頁(yè)代碼
相關(guān)文章
bootstrap中selectpicker下拉框使用方法實(shí)例
這篇文章主要給大家介紹了關(guān)于bootstrap中selectpicker下拉框使用的相關(guān)資料,文中通過示例介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-03-03
js實(shí)現(xiàn)頁(yè)面刷新滾動(dòng)條位置不變
本文介紹了js實(shí)現(xiàn)頁(yè)面刷新滾動(dòng)條位置不變的實(shí)例代碼,需要的朋友可以看下2016-11-11
用Javascript實(shí)現(xiàn)發(fā)送短信驗(yàn)證碼間隔功能
javascript獲取當(dāng)前鼠標(biāo)坐標(biāo)的方法
基于chosen插件實(shí)現(xiàn)人員選擇樹搜索自動(dòng)篩選功能
js判斷數(shù)據(jù)類型如判斷是否為數(shù)組是否為字符串等等
深入理解ES6之?dāng)?shù)據(jù)解構(gòu)的用法

