/** * Created by zxm on 2017/3/31. */ $.fn.extend({ "initPage":function(listCount,currentPage,fun){ var maxshowpageitem = $(this).attr("maxshowpageitem"); if(maxshowpageitem!=null&&maxshowpageitem>0&&maxshowpageitem!=""){ page.maxshowpageitem = maxshowpageitem; } var pagelistcount = $(this).attr("pagelistcount"); if(pagelistcount!=null&&pagelistcount>0&&pagelistcount!=""){ page.pagelistcount = pagelistcount; } var pageId = $(this).attr("id"); page.pageId=pageId; if(listCount<0){ listCount = 0; } if(currentPage<=0){ currentPage=1; } page.setPageListCount(listCount,currentPage,fun); } }); var page = { "pageId":"", "maxshowpageitem":5,//最多显示的页码个数 "pagelistcount":10,//每一页显示的内容条数 /** * 初始化分页界面 * @param listCount 列表总量 */ "initWithUl":function(listCount,currentPage){ var pageCount = 1; if(listCount>=0){ var pageCount = listCount%page.pagelistcount>0?parseInt(listCount/page.pagelistcount)+1:parseInt(listCount/page.pagelistcount); } var appendStr = page.getPageListModel(pageCount,currentPage); $("#"+page.pageId).html(appendStr); }, /** * 设置列表总量和当前页码 * @param listCount 列表总量 * @param currentPage 当前页码 */ "setPageListCount":function(listCount,currentPage,fun){ listCount = parseInt(listCount); currentPage = parseInt(currentPage); page.initWithUl(listCount,currentPage); page.initPageEvent(listCount,fun); fun(currentPage); }, "initPageEvent":function(listCount,fun){ $("#"+page.pageId +">li[class='pageItem']").on("click",function(){ page.setPageListCount(listCount,$(this).attr("page-data"),fun); }); }, "getPageListModel":function(pageCount,currentPage){ var prePage = currentPage-1; var nextPage = currentPage+1; var prePageClass ="pageItem"; var nextPageClass = "pageItem"; if(prePage<=0){ prePageClass="pageItemDisable"; } if(nextPage>pageCount){ nextPageClass="pageItemDisable"; } var appendStr =""; appendStr+="
  • 首页
  • "; appendStr+="
  • <上一页
  • "; var miniPageNumber = 1; if(currentPage-parseInt(page.maxshowpageitem/2)>0&¤tPage+parseInt(page.maxshowpageitem/2)<=pageCount){ miniPageNumber = currentPage-parseInt(page.maxshowpageitem/2); }else if(currentPage-parseInt(page.maxshowpageitem/2)>0&¤tPage+parseInt(page.maxshowpageitem/2)>pageCount){ miniPageNumber = pageCount-page.maxshowpageitem+1; if(miniPageNumber<=0){ miniPageNumber=1; } } var showPageNum = parseInt(page.maxshowpageitem); if(pageCount"+pageNumber+""; } appendStr+="
  • 下一页>
  • "; appendStr+="
  • 尾页
  • "; return appendStr; } }