js分页工具

js代码
/**
 * 分页js
 */
var Page;

(function(){

	    var Page = {version:"1.0",author:"liuxingmi"};
		var showPage = 9;
	    Page.navigation = function(divId, totalRecord, totalPage, currentPage, func){

	    	var nav = '<ul class=\"pagination\" title=\"分页列表\">';
	    	       nav += '<li class="totalAnnal">总记录数:<i id="totalRecord">' + totalRecord +'</i></li>';
	    	       nav += '<li class="totalPage">总页数:<i id="totalPage">' + totalPage + '</i></li>';
	    	       nav += '<li class="currentPage">当前页:<b id="pageNum">' + currentPage + '</b></li>';
	    	       if(currentPage == 1){
	    	    	   nav += '<li class="firstPage currentState"><a href="javascript:void(0);" id="firstPage" title="首页">首页</a></li>';
		    	       nav += '<li class="previousPage currentState"><a href="javascript:void(0);" id="frontPage" title="前一页">前一页</a></li>';
	    	       } else {
	    	    	   nav += '<li class="firstPage"><a href="javascript:' + func + '(1);" id="firstPage" title="首页">首页</a></li>';
	    	    	   nav += '<li class="previousPage"><a href="javascript:' + func + '('+ (currentPage -1) +');" id="frontPage" title="前一页">前一页</a></li>';
	    	       }

	    	       nav += '<li id="num"><ol>';
	    		         var start = currentPage - Math.floor(showPage/2);
	    		         var end = currentPage + Math.floor(showPage/2);

	    		         if(end > totalPage){
	    		        	 start -= (end - totalPage);
	    		         }

	    		         if(start <= 0){
	    		        	 start = 1;
	    		         }

	    		         if(currentPage < showPage && end < showPage){
	    		            end = showPage;
	    		         }

	    		         if(end > totalPage){
	    		        	 end = totalPage;
	    		         }

	    		         for(var i = start; i <= end; i++){
	    		        	 if(i == currentPage){
	    		        		 nav += '<li class="currentState"><a title="转到第1页" href="javascript:' + func + '(' + i + ');">' + i + '</a></li>';
	    		        	 } else {
	    		        		 nav += '<li><a title="转到第1页" href="javascript:' + func + '(' + i + ');">' + i + '</a></li>';
	    		        	 }
	    		         }

	    		         nav += '</ol></li>';
	    		         if(currentPage == totalPage){
	    		        	 nav += '<li class="nextPage currentState"><a href="javascript:void(0);" id="nextPage" title="后一页">后一页</a></li>';
	    		        	 nav +='<li class="lastPage currentState"><a href="javascript:void(0);" id="lastPage" title="尾页">尾页</a></i>';
	    		         } else {
	    		        	 nav += '<li class="nextPage"><a href="javascript:' + func + '('+ (currentPage + 1) +');" id="nextPage" title="后一页">后一页</a></li>';
	    		        	 nav +='<li class="lastPage"><a href="javascript:' + func + '(' + totalPage + ');" id="lastPage" title="尾页">尾页</a></i>';
	    		         }
    		        	 nav += '</ul>';    

	    	$("#" + divId).html(nav);	    	

	    };

	   this.Page = Page;
})();

css

/*分页样式开始*/
.pagination{
 overflow:hidden;
 margin:0 0 0 25px;
 padding:10px 10px 6px 150px;
 border-top:1px solid #c8c8c8;
 _zoom:1;
 text-align: center;
}
.pagination *{
 display:inline;
 float:left;
 margin:0;
 padding:0;
 font-size:12px;
}
.pagination i{
 float:none;
 padding-right:1px;
}
.currentPage b{
 float:none;
 color:#f00;
}
.pagination li{
 list-style:none;
 margin:0 5px;
}
.pagination li li{
 position:relative;
 margin:-2px 0 0;
 font-family: Arial, Helvetica, sans-serif
}
.firstPage a,.previousPage a,.nextPage a,.lastPage a{
 overflow:hidden;
 height:0;
 text-indent:-9999em;
 border-top:8px solid #fff;
 border-bottom:8px solid #fff;
}
.pagination li li a{
 margin:0 1px;
 padding:0 4px;
 border:3px double #fff;
 +border-color:#eee;
 background:#eee;
 color:#06f;
 text-decoration:none;
}
.pagination li li a:hover{
 background:#f60;
 border-color:#fff;
 +border-color:#f60;
 color:#fff;
}
li.firstPage{
 margin-left:40px;
 border-left:3px solid #06f;
}
.firstPage a,.previousPage a{
 border-right:12px solid #06f;
}
.firstPage a:hover,.previousPage a:hover{
 border-right-color: #f60;
}
.nextPage a,.lastPage a{
 border-left:12px solid #06f;
}
.nextPage a:hover,.lastPage a:hover{
 border-left-color:#f60;
}
.pagination li.lastPage{
 border-right:3px solid #06f;
}
.pagination li li.currentState a{
 position:relative;
 margin:-1px 3px;
 padding:1px 4px;
 border:3px double #fff;
 +border-color:#f60;
 background:#f60;
 color:#fff;
}
.pagination li.currentState,.currentState a,.currentState a:hover{
 border-color:#fff #ccc;
 cursor:default;
}
/*分页样式结束*/

调用方法

Page.navigation("pageNav", 100, 10,  1, "xxxList");

<div id="pageNav"></div>

时间: 2024-10-26 11:04:41

js分页工具的相关文章

2015年最佳的15个 Node.js 开发工具

Node.js 越来月流行,这个基于 Google V8 引擎建立的平台, 用于方便地搭建响应速度快.易于扩展的网络应用.在本文中,我们列出了2015年最佳的15个 Node.js 开发工具.这些工具对于刚刚开始学习 Node.js 的新手开发者非常有帮助.如果你知道任何其他有用的 Node.js 资源,请让我们知道. 您可能感兴趣的相关文章 Web 前端开发人员和设计师必读精华文章推荐 精心挑选的优秀jQuery Ajax分页插件和教程 12个让人惊叹的的创意的 404 错误页面设计 让网站动

项目组自己编写的js分页标签(百度分页)

/** * 分页工具 */ (function($) {$.extend({PageUtil:{}})})(jQuery); (function($) { $.extend($.PageUtil,{ //默认每页条数 _pageSize:10, //获取数据请求链接 _getDataUrl:"", //检索条件form的Id _filedFormId:"", //显示区域的Id _showId:"", //默认显示翻页标签个数 _showPage

JS模块化工具requirejs教程(一):初识requirejs

随着网站功能逐渐丰富,网页中的js也变得越来越复杂和臃肿,原有通过script标签来导入一个个的js文件这种方式已经不能满足现在互联网开发模式,我们需要团队协作.模块复用.单元测试等等一系列复杂的需求. RequireJS是一个非常小巧的JavaScript模块载入框架,是AMD规范最好的实现者之一.最新版本的RequireJS压缩后只有14K,堪称非常轻量.它还同时可以和其他的框架协同工作,使用RequireJS必将使您的前端代码质量得以提升. requirejs能带来什么好处 官方对requ

js常用工具库XCLJsTool v1.0发布

最近有空,整了一个js的工具库,还没有正式用于项目中,自己也没有时间写测试用例,想了一下,还是贴出来给大家看看,如果有问题,请留言,非常感谢!项目我放在了github上面,会经常更新的,过段时间会发布一版! /** * 欢迎使用本程序,您可以任意修改.复制.分享本程序所有代码,只需要保留本注释即可,谢谢! * 项目地址:<span style="color:#ff0000;">https://github.com/xucongli1989/XCLJsTool</spa

Javascrpt 分页工具

title: The following iterative sequence is defined for the set of positive integers: n n/2 (n is even) n 3n + 1 (n is odd) Using the rule above and starting with 13, we generate the following sequence: 13 40 20 10 5 16 8 4 2 1 It can be seen that thi

jsp、js分页功能的简单总结

一.概述 首先,我们要明确为何需要分页技术,主要原因有以下: 1.分页可以提高客户体验度,适当地选择合适的数据条数,让页面显得更有条理,使得用户体验感良好,避免过多数据的冗余. 2.提高性能的需要.分页技术,有选择的加载某部分数据,在数据量较大的时候,分部分加载数据.显示数据,可以有效提高程序的性能,当然,单纯的js的分页技术并没有这种效果. 所以,分页技术是web技术中比较常用的技术,而下面讨论的主要是两种分页技术:一种是jsp的分页技术,其读取数据分批次读取,操作页数跳转的时候才加载相应页面

JS模块化工具requirejs教程(二):基本知识

前一篇:JS模块化工具requirejs教程(一):初识requirejs我们以非常简单的方式引入了requirejs,这一篇将讲述一下requirejs中的一些基本知识,包括API使用方式等 基本API require会定义三个变量:define,require,requirejs,其中require === requirejs,一般使用require更简短 define 从名字就可以看出这个api是用来定义一个模块 require 加载依赖模块,并执行加载完后的回调函数 前一篇中的a.js:

推荐近期15个 Node.js 开发工具

近来Node.js 越来月流行了,这个基于Google V8 引擎建立的平台, 用于方便地搭建响应速度快.易于扩展的网络应用.在本文中,我们列出了2015年最佳的15个 Node.js 开发工具.这些工具对于刚刚开始学习 Node.js 的新手开发者非常有帮助.如果你知道任何其他有用的 Node.js 资源,请让我们知道. 1. IO.js JavaScript的I / O是一个NPM兼容的平台,最初是基于Node.js和建立在Chrome V8运行.它的目的是提供更快和可预测的发布周期. 2.

js分页

<!DOCTYPE html> <html> <head> <title>js分页</title> <style type="text/css"> /*表格样式*/ .tbData { border-collapse:collapse; border-spacing:0px; border:solid 3px #ddd; font-size:14px; font-family:Consolas; color:#33