javaScript翻页功能
来源:互联网 发布:知乎 查过敏源 编辑:程序博客网 时间:2024/06/06 13:12
//分页函数function page(opt){ if(!opt.id){ return false; } var pageContainer=document.getElementById(opt.id); //分页最外部的容器 var nowPage=opt.nowPage || 1; //当前处于第几页 var pageSize=opt.pageSize || 15; //每页的基数 var countPage=Math.ceil(opt.countItem/pageSize); //计算总共有多少分页 var callback=opt.callback || function(){}; //回调 var pageHtml='<span class="page-item-count">共'+countPage+'页</span>'; //控制器函数,生成一些特定的公共部分 var controllerTab={ prev:function(){ if(nowPage==1){ pageHtml+='<a href="#'+(nowPage-1)+'" class="prev off">上一页</a>'; }else{ pageHtml+='<a href="#'+(nowPage-1)+'" class="prev">上一页</a>'; } }, addCurrent:function(){ if(nowPage==i){ pageHtml+='<a href="#'+i+'" class="current">'+i+'</a>'; }else{ pageHtml+='<a href="#'+i+'">'+i+'</a>'; } }, next:function(){ if(nowPage==countPage){ pageHtml+='<a href="#'+(nowPage+1)+'" class="next off">下一页</a>'; }else{ pageHtml+='<a href="#'+(nowPage+1)+'" class="next">下一页</a>'; } }, createLast:function(){ pageHtml+='<span class="omit">...</span>'; pageHtml+='<a href="#'+(countPage-1)+'">'+(countPage-1)+'</a>'; pageHtml+='<a href="#'+countPage+'">'+countPage+'</a>'; } } if(countPage<=10){ controllerTab.prev(); for(var i=1; i<=countPage; i++){ for(var i=1; i<=countPage; i++){ controllerTab.addCurrent(); } } controllerTab.next(); pageContainer.innerHTML=pageHtml; }else{ if(nowPage<=5){ controllerTab.prev(); for(var i=1; i<=nowPage+2; i++){ controllerTab.addCurrent(); } controllerTab.createLast(); controllerTab.next(); pageContainer.innerHTML=pageHtml; }else if(nowPage==6){ controllerTab.prev(); for(var i=1; i<=nowPage+2; i++){ if(i==3){ continue; } controllerTab.addCurrent(); } controllerTab.createLast(); controllerTab.next(); pageContainer.innerHTML=pageHtml; }else if(nowPage<=countPage-5){ controllerTab.prev(); pageHtml+='<a href="#1">1</a>'; pageHtml+='<a href="#2">2</a>'; pageHtml+='<span class="omit">...</span>'; for(var i=nowPage-2; i<=nowPage+2; i++){ controllerTab.addCurrent(); } controllerTab.createLast(); controllerTab.next(); pageContainer.innerHTML=pageHtml; }else{ controllerTab.prev(); pageHtml+='<a href="#1">1</a>'; pageHtml+='<a href="#2">2</a>'; pageHtml+='<span class="omit">...</span>'; for(var i=nowPage-2; i<=countPage; i++){ controllerTab.addCurrent(); } controllerTab.next(); pageContainer.innerHTML=pageHtml; } } callback(nowPage,countPage); var aA=pageContainer.querySelectorAll('a'); for(j=0; j<aA.length; j++){ aA[j].onclick=function(){ var nowNum=parseInt(this.getAttribute('href').substring(1)); if(nowNum && nowNum<countPage+1){ pageContainer.innerHTML=''; page({ id:'page-container', nowPage:nowNum, countItem:opt.countItem, pageSize:pageSize, callback:callback }); } return false; //阻止默认事件,这样a标签href中的#就不会追加到地址栏后边了 } }}//分页函数 endvar oConsole=document.getElementById('console-info'); //演示打印信息//调用分页函数,根据配置参数生成分页page({ id:'page-container', nowPage:1, //默认当前页 countItem:392, //总共有多少项 pageSize:15, //每页的基数 callback:function(now,count){ //实际开发中,在这里可以用ajax更新分页数据... oConsole.innerHTML='当前页:'+now+' 总共页:'+count; }});
阅读全文
0 0
- JavaScript实现翻页功能
- javaScript翻页功能
- js javascript翻页功能 各种翻页都有
- 翻页功能
- 用Javascript实现Blogger/Blogspot的传统模板翻页功能
- 翻页功能的实现
- UIWebView 实现翻页功能
- oracle上下翻页功能
- 微博翻页功能
- UIWebView 实现翻页功能
- 动画翻页功能剪辑
- UIWebView 实现翻页功能
- JSP翻页功能代码
- easyui 翻页跳转功能。
- ajax翻页功能
- 翻页功能测用例设计
- 翻页功能的实现
- DataGridView添加翻页功能
- 七-3 管理本地存储,Cookies和资源 检查资源
- 连续总结第十四天
- 解决文件图片等上传DebugFilesKeyError: You tried to access the file "file" in the request
- SQL语言——学习随手记20171027
- NuGet无法下载问题
- javaScript翻页功能
- phpmailer 发送图片
- JS——数组(引用传递)
- spark基础之spark streaming的checkpoint机制
- 1004. Counting Leaves (30)
- Maven学习
- 分布式事务之——tcc-transaction分布式TCC型事务框架搭建与实战案例(基于Dubbo/Dubbox)
- LeetCode 114. Flatten Binary Tree to Linked List 拉平二叉树 Python Solution
- 根据字符长度,控制在TextView显示多少行