//程式碼整理:懶人之家 www.lanrenzhijia.com
//分頁外掛
/**
2014-08-05 ch
2016-07-19 Modified By RenGuoQiang
**/
(function($){
var ms = {
init:function(obj,args){
return (function(){
ms.fillHtml(obj,args);
ms.bindEvent(obj,args);
})();
},
//填充html
fillHtml:function(obj,args){
return (function(){
obj.empty();
//上一頁
if(args.current > 1){
obj.append('<a href="javascript:;" class="prevPage"><</a>');
}else{
obj.remove('.prevPage');
obj.append('<span class="disabled"><</span>');
}
//中間頁碼
if(args.current != 1 && args.current >= 4 && args.pageCount != 4){
obj.append('<a href="javascript:;" class="tcdNumber">'+1+'</a>');
}
if(args.current-2 > 2 && args.current <= args.pageCount && args.pageCount > 5){
obj.append('<span>...</span>');
}
var start = args.current -1,end = args.current+1;
if((start > 1 && args.current < 4)||args.current == 1){
end++;
}
if(args.current > args.pageCount-4 && args.current >= args.pageCount){
start--;
}
for (;start <= end; start++) {
if(start <= args.pageCount && start >= 1){
if(start != args.current){
obj.append('<a href="javascript:;" class="tcdNumber">'+ start +'</a>');
}else{
obj.append('<span class="current">'+ start +'</span>');
}
}
}
if(args.current + 2 < args.pageCount - 1 && args.current >= 1 && args.pageCount > 5){
obj.append('<span>...</span>');
}
if(args.current != args.pageCount && args.current < args.pageCount -2 && args.pageCount != 4){
obj.append('<a href="javascript:;" class="tcdNumber">'+args.pageCount+'</a>');
}
//下一頁
if(args.current < args.pageCount){
obj.append('<a href="javascript:;" class="nextPage">></a>');
}else{
obj.remove('.nextPage');
obj.append('<span class="disabled">></span>');
}
})();
},
//繫結事件
bindEvent:function(obj,args){
return (function(){
obj.on("click","a.tcdNumber",function(){
var current = parseInt($(this).text());
ms.fillHtml(obj,{"current":current,"pageCount":args.pageCount});
if(typeof(args.backFn)=="function"){
args.backFn(current);
}
});
//上一頁
obj.on("click","a.prevPage",function(){
var current = parseInt(obj.children("span.current").text());
ms.fillHtml(obj,{"current":current-1,"pageCount":args.pageCount});
if(typeof(args.backFn)=="function"){
args.backFn(current-1);
}
});
//下一頁
obj.on("click","a.nextPage",function(){
var current = parseInt(obj.children("span.current").text());
ms.fillHtml(obj,{"current":current+1,"pageCount":args.pageCount});
if(typeof(args.backFn)=="function"){
args.backFn(current+1);
}
});
})();
}
}
$.fn.createPage = function(options){
var inited = false;
var args = $.extend({
pageCount : 10,
current : 1,
backFn : function(){}
},options);
alert(inited);
if(!inited) {
ms.init(this,args);
inited = true;
}
}
})(jQuery);
完善分頁外掛,增加內部成員,確定控制元件是否已經初始化過一次。
相關文章
- java內部類之成員內部類Java
- jquery分頁外掛jQuery
- mybatis generator外掛系列--分頁外掛MyBatis
- Java內部類詳解-- 成員內部類Java
- 內部類中的成員的定義和使用
- java內部類之成員內部類之匿名內部類Java
- myBatis分頁外掛配置MyBatis
- java內部類之成員內部類例項Java
- 學習外掛 -------- 成長過程(經典推薦)
- java內部類之成員內部類之區域性內部類Java
- mybatis plus 新增分頁外掛MyBatis
- 10-Java內部類——成員內部類、區域性內部類、匿名內部類Java
- Springboot+Mybatis+Mybatisplus 框架中增加自定義分頁外掛和sql 佔位符修改外掛Spring BootMyBatis框架SQL
- jquery寫的ajax分頁外掛jQuery
- mybatisPlus分頁外掛的使用MyBatis
- 如何控制元件網頁中的REALONE外掛控制元件網頁
- Unix伺服器是否已經過時了?伺服器
- mybatis的三發外掛:分頁pagehelpMyBatis
- 【04】確定物件被使用之前已先被初始化物件
- [微軟官方]如何確定某頁時是否完成 web 瀏覽器控制元件中的載入微軟Web瀏覽器控制元件
- 使用mybatis分頁外掛展示首頁最新視訊MyBatis
- js如何判斷頁面是否已經載入完成JS
- 通過反射獲取類的類名,方法和內部成員變數反射變數
- Linux kernel 的設計是否已經過時?Linux
- 判斷checkbox是否已經勾選設定按鈕是否可用
- 分頁控制元件及儲存過程控制元件儲存過程
- 【深入淺出MyBatis系列七】分頁外掛MyBatis
- PageHelper 分頁外掛使用中的那些“坑”
- MybatisPlus的分頁外掛簡單使用MyBatis
- java中的成員內部類,程式碼截圖Java
- 網頁內一次實現使用者控制元件內Web控制元件的多事件網頁控制元件Web事件
- (血和淚的成果)使用PageHelper分頁外掛進行後臺分頁
- 今天研究了一下vue分頁外掛Vue
- 如何實現一個mybaits 分頁外掛AI
- 手把手教你開發 MyBatis 分頁外掛MyBatis
- Mybatis分頁外掛只顯示第一頁的問題MyBatis
- 用了這個jupyter外掛,我已經半個月沒開啟過excel了Excel
- [外掛擴充套件]返回頂部ReturnTop外掛套件