这篇文章给大家分享的是有关怎么使用amaze ui的分页样式封装一个通用的JS分页控件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
首先,肯定是用UI做样式效果。
第一步
找到UI的分页HTML代码。
UI的分页代码
<ul data-am-widget="pagination" class="am-pagination am-pagination-default" > <li class="am-pagination-first "> <a href="#" class="">第一页</a> </li> <li class="am-pagination-prev "> <a href="#" class="">上一页</a> </li> <li class=""> <a href="#" class="">1</a> </li> <li class="am-active"> <a href="#" class="am-active">2</a> </li> <li class=""> <a href="#" class="">3</a> </li> <li class=""> <a href="#" class="">4</a> </li> <li class=""> <a href="#" class="">5</a> </li> <li class="am-pagination-next "> <a href="#" class="">下一页</a> </li> <li class="am-pagination-last "> <a href="#" class="">最末页</a> </li> </ul>代码简单,外观漂亮,自然是封装的首选啦。
接下来,就是造轮子的时间了,首先讲讲思路:我们需要一个动态的分页,那么这个里面的 li 就必须是动态生成的,所以需要用js去生成dom元素,其次,使用者需要一个回调函数,用来分页之后去请求他的数据,加载数据,这是核心的2个思路,剩下的就是分页常规的一些东西,比如分页必须的参数:当前页、每页条数、总条数,以及这个样式对应的一些事件的处理:首页、尾页、上一页、下一页。
思路整理完毕,开整。
1、初始化
init初始化函数,里面将使用者传入进来的参数赋值,并计算下总页数,总页数说明下,我是以0为第一页,所以总页数为 总条数/每页条数 使用Math.ceil 向上取整 -1 即为总页数。
function fm_page(cnf) { var fmpage = { id:'page', pageNo : 0,// 当前页 pageSize : 10,// 每页条数 pageCount : 100,// 总条数 showPageNum : 5,// 分页元素长度 pageNum:0,// 总页数 pageCmp:null, start:0, init : function() { var it = this; if (cnf) { $.each(cnf, function(k, v) { it[k]=v; }); } this.pageNum=Math.ceil(this.pageCount/this.pageSize)-1; } } fmpage.init(); return fmpage; }2、js动态加载li
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。