一个简单的js分页函数

网上有很多js分页插件,一开始我也是在网上找了几款js分页插件,不过有的对ie6兼容不太好,就自己写了一个,其实也不难。这个是js根据服务器返回的总条目数进行分页的,分割大小自定义。

修改为jqery插件形式方便。css外部定义

使用:$(".xxxx").pages()

$("#pages").pages(
	{
	"nums":10,
	"start":1,
	"display":5,
	"def":5,
	"name":'name',
	"column":"paper",
	callback:function(page){
		//method方法体
	}
      }
 );

方法体:

jQuery.fn.extend({
	pages:function(param){
		//参数对象
		//example param={"nums":6,"start":1,"display":5,"def":5,"name":"note","column":"paper",callback:function(page){}};
		//default 分段数
		var pages=$(this);
		pages.html("");
		//求分割页数 以def为每页数量
		count=param.nums%param.def!=0?parseInt(param.nums/param.def)+1:param.nums/param.def;
		pages.append("<a>总数"+param.nums+"/页数"+count+"</a>");
		pages.append("<a class='changepage' id='1' name='"+param.name+"' column='"+param.column+"'>首页</a>");
		if (param.start > 1){
			pages.append("<a class='changepage' name='"+param.name+"' column='"+param.column+"' id="+(parseInt(param.start)-1)+">上一页</a>");
		}
		//i->index 索引
		var i=param.start-parseInt(param.display/2) > 0 ? param.start-parseInt(param.display/2):1;
		for (;i<=count && i <= param.start+parseInt(param.display/2);i++){
			if (i!=param.start){
				pages.append("<a class='changepage' name='"+param.name+"' column='"+param.column+"' id="+i+">"+i+"</a>");
			}else{
				pages.append("<a>"+i+"</a>");
			}
		}
		if (count > param.start){
			pages.append("<a class='changepage' name='"+param.name+"' column='"+param.column+"' id="+(parseInt(param.start)+1)+">下一页</a>");
		}
		pages.append("<a class='changepage' name='"+param.name+"' column='"+param.column+"' id="+count+">末页</a>");
		$(".changepage",pages).css("color","white");
		$(".changepage",pages).live('click',function(){
			//call this page object
			param.callback($(this));
		});
	}
});


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值