//代码整理:懒人之家 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);
完善分页插件,增加内部成员,确定控件是否已经初始化过一次。
推荐阅读
- windows64位 python2.7安装twisted
- beautiful soup解析有空格的class
- 切换使用phpstudy的mysql和本机自带的mysql
- js基本语法总结(一)
- .py文件不能设置默认打开程序 win10
- Git提交Everything up-to-date Branch ‘master’ set up to track remote branch ‘master’ from 'origin’如何解决?
- idea maven冲突问题 报 system omitted for duplicate解决方法
- mac下idea 设置spring.profiles.active自定义配置文件无效
- IDEA一直提示 错误: 找不到或无法加载主类
- java 文件字节流(pdf)预览