用jquery.pager.js实现分页
1.html
<link href="/stylesheets/Pager.css" rel="stylesheet" type="text/css"/>
<script src="/javascripts/web/jquery.pager.js" type="text/javascript"></script> <body>
<div id="pager">
<div id="countPage" style="display:none">{{maxPage}}</div>
<div id="title" style="display:none">{{title}}</div>
<div id="nowPage" style="display:none">{{page}}</div>
</div>
</body>
<script type="text/javascript">
var title =jQuery("#title").text() ;
var pageCount =parseInt(jQuery("#countPage").text()) ;
var nowPage=parseInt(jQuery("#nowPage").text());
jQuery(function(){
$("#pager").pager({ pagenumber: nowPage, pagecount: pageCount, buttonClickCallback: PageClick });//pagenumber:当前页,pagecount:总页数
});
PageClick = function(pageclickednumber) {
$("#pager").pager({
pagenumber: pageclickednumber, pagecount: pageCount, buttonClickCallback: PageClick
});
window.location.href = "/article/search/"+title+"/"+pageclickednumber;
}
</script>
2.Pager.css
#pager ul.pages{
display:block;
border:none;
text-transform:uppercase;
font-size:10px;margin:10px 50px;padding:;
}
#pager ul.pages li{
list-style:none;
float:left;
border:1px solid #ccc;
text-decoration:none;
margin:-20px 5px ;padding:5px;
}
#pager ul.pages li:hover{border:1px solid #003f7e; }
#pager ul.pages li.pgEmpty{
border:1px solid #eee;
color:#eee;
}
#pager ul.pages li.pgCurrent{
border:1px solid #3c90d9;
color: #fff;
font-weight:;
/*background-color:#eee;*/
background: #3c90d9 none repeat scroll ;
}
#pager{margin-left: 290px;}
3.jquery.pager.js
/*
* jQuery pager plugin
* Version 1.0 (12/22/2008)
* @requires jQuery v1.2.6 or later
*
* Example at: http://jonpauldavies.github.com/JQuery/Pager/PagerDemo.html
*
* Copyright (c) 2008-2009 Jon Paul Davies
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
*
* Read the related blog post and contact the author at http://www.j-dee.com/2008/12/22/jquery-pager-plugin/
*
* This version is far from perfect and doesn't manage it's own state, therefore contributions are more than welcome!
*
* Usage: .pager({ pagenumber: 1, pagecount: 15, buttonClickCallback: PagerClickTest });
*
* Where pagenumber is the visible page number
* pagecount is the total number of pages to display
* buttonClickCallback is the method to fire when a pager button is clicked.
*
* buttonClickCallback signiture is PagerClickTest = function(pageclickednumber)
* Where pageclickednumber is the number of the page clicked in the control.
*
* The included Pager.CSS file is a dependancy but can obviously tweaked to your wishes
* Tested in IE6 IE7 Firefox & Safari. Any browser strangeness, please report.
*/
(function($) { $.fn.pager = function(options) { var opts = $.extend({}, $.fn.pager.defaults, options); return this.each(function() { // empty out the destination element and then render out the pager with the supplied options
$(this).empty().append(renderpager(parseInt(options.pagenumber), parseInt(options.pagecount), options.buttonClickCallback)); // specify correct cursor activity
$('.pages li').mouseover(function() { document.body.style.cursor = "pointer"; }).mouseout(function() { document.body.style.cursor = "auto"; });
});
}; // render and return the pager with the supplied options
function renderpager(pagenumber, pagecount, buttonClickCallback) { // setup $pager to hold render
var $pager = $('<ul class="pages"></ul>'); // add in the previous and next buttons
//$pager.append(renderButton('first', pagenumber, pagecount, buttonClickCallback)).append(renderButton('prev', pagenumber, pagecount, buttonClickCallback));
$pager.append(renderButton('上一页', pagenumber, pagecount, buttonClickCallback));
// pager currently only handles 10 viewable pages ( could be easily parameterized, maybe in next version ) so handle edge cases
var startPoint = ;
//var endPoint = 9;
var endPoint = ;
if (pagenumber > && pagenumber<pagecount-) {
startPoint = pagenumber - ;
endPoint = pagenumber + ;
}
if(pagenumber>pagecount-&& pagenumber<pagecount+){
startPoint = pagecount - ;
endPoint = pagecount;
}
if (endPoint > pagecount) {
startPoint = pagecount - ;
endPoint = pagecount;
} if (startPoint < ) {
startPoint = ;
} // loop thru visible pages and render buttons
for (var page = startPoint; page <= endPoint; page++) { var currentButton = $('<li class="page-number">' + (page) + '</li>'); page == pagenumber ? currentButton.addClass('pgCurrent') : currentButton.click(function() { buttonClickCallback(this.firstChild.data); });
currentButton.appendTo($pager);
} // render in the next and last buttons before returning the whole rendered control back.
//$pager.append(renderButton('next', pagenumber, pagecount, buttonClickCallback)).append(renderButton('last', pagenumber, pagecount, buttonClickCallback));
$pager.append(renderButton('下一页', pagenumber, pagecount, buttonClickCallback));
return $pager;
} // renders and returns a 'specialized' button, ie 'next', 'previous' etc. rather than a page number button
function renderButton(buttonLabel, pagenumber, pagecount, buttonClickCallback) { var $Button = $('<li class="pgNext">' + buttonLabel + '</li>'); var destPage = ; // work out destination page for required button type
switch (buttonLabel) {
case "first":
destPage = ;
break;
case "上一页":
destPage = pagenumber - ;
break;
case "下一页":
destPage = pagenumber + ;
break;
case "last":
destPage = pagecount;
break;
} // disable and 'grey' out buttons if not needed.
if (buttonLabel == "first" || buttonLabel == "上一页") {
pagenumber <= ? $Button.addClass('pgEmpty') : $Button.click(function() { buttonClickCallback(destPage); });
}
else {
pagenumber >= pagecount ? $Button.addClass('pgEmpty') : $Button.click(function() { buttonClickCallback(destPage); });
} return $Button;
} // pager defaults. hardly worth bothering with in this case but used as placeholder for expansion in the next version
$.fn.pager.defaults = {
pagenumber: ,
pagecount:
}; })(jQuery);
4.结果:
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAYYAAABCCAIAAADc7OakAAADfUlEQVR4nO3aPW7bQBRFYe1JbZbBpcxCAswSvAJ6Cy6VhmUMpEwjOEWQxkAKppBMChRpzs+z3yVzPrhL9GYoUseU5EMPADIO3hsAgBFJAiCEJAEQQpIACCFJAISQJABCSBIAISQJgBCSBEAISQIghCQBEEKSAAjZapK+uTLZzGTIl6/fC34+YidbH2Kl5LpEtQ0nSWfpgs3cP8QqSfU72fQQKyTJC0kyWJok6QyxQpK8kCSDpUmSzhArJMkLSTJYmiTpDLFCkryQJIOlSZLOECskyQtJMliaJOkMsUKSvJAkg6VJks4QKyTJC0kyWJok6QyxQpK8kCSDpUmSzhArJMnLLpPUhmNoc6a14bjoblLyK6eLzbGJ3eyKiUl6OL/98/lXcZK62CwcStbh9JfnqWLIzdM8N2V9yHAkc5ae6pnV108ySXJDku4fvPLYpJffJUcxVCXp8c/LzX94PpUlqY2XPXSxmdtNepLa0ITQVCXp3Wzk3SV1cX4rSVZPMklyQ5Ku5n8Bl/0yv9lIZZKeTmObSpM0bqbqcNrQxG6pAxtJUvpJJklu9pqk1Utuqoth+nJZuOg/L0nDz+m17/8+Pda9cVt4GpLfc4V2uQOZb9zmn5XsJKWf3eExqSeZJLnZa5Iml9n6hxDj1Tp0RCRJp9e+719+/Kz9eLsNsylIOZzhCa1LksFORtettGFInOVJJklu/pMkrbu9Wq8PFkjSw7lfuj/K/8Zt/ngSDmf6wXDKh8EFJ6j4jVsXm9xb4bWTTJLckKSr4WodH+ydpPHrtr7viz9Lun3xVd+bVN0lDTuxvEvKkn6SSZIbkjR54LGJ3dtdwfyQ7C+8024rPipJ4/sZg09w6t64vf/XCJ/1jVvSSSZJbnaTJJM/WZlcnteLd21p/lTSY0h2krJOMklys5skeS5NknSGWCFJXkiSwdIkSWeIFZLkhSQZLE2SdIZYIUleSJLB0iRJZ4gVkuSFJBksTZJ0hlghSV5IksHSJElniBWS5IUkGSxNknSGWCFJXjacJEcmm5kMsUqSyOE4DrFScl2i2laTBGCXSBIAISQJgBCSBEAISQIghCQBEEKSAAghSQCEkCQAQkgSACEkCYAQkgRACEkCIOTwGwBkkCQAQkgSACEkCYAQkgRACEkCIIQkARBCkgAIIUkAhJAkAEJIEgAhJAmAEJIEQMg/TUWnDtvMc/sAAAAASUVORK5CYII=" alt="" />
用jquery.pager.js实现分页的更多相关文章
- Spring Data Jpa+SpringMVC+Jquery.pagination.js实现分页
本博客介绍基于Spring Data这款orm框架加上Jquery.pagination插件实现的分页功能. 介绍一下Spring Data框架 spring Data : Spring 的一个子项目 ...
- jQuery.pager无刷新分页
刚刚学习前端的时候,需要一个无刷新的分页功能,找了一个不错的,大家也有很大分享,在这里写一个自己的部分代码,前后端都有,需要的小伙伴可以参考一下,代码不是完整的. 直接上伪代码<样式代码省略,部 ...
- MVC - 11(下)jquery.tmpl.js +ajax分页
继续 mvc-11(上).dto:http://www.cnblogs.com/tangge/p/3840060.html jquery.tmpl.js 下载:http://pan.baidu.com ...
- Spring+Mybatis+jQuery.Pagination.js异步分页及JsonConfig的使用
在开发工作中经常用到异步分页,这里简单整理一下资料. 一.Controller方法 package com.lwj.controller; import javax.servlet.http.Http ...
- 使用jQuery的分页插件jquery.pagination.js进行分页
1,需要用到jquery.pagination.js和pagination.css https://pan.baidu.com/s/1G3PLQSRGjvLxl2ryqpV76w https://pa ...
- Jquery.Page.js 分页插件的使用
1.简单直接贴代码 需要引用以下样式和脚本 <link href="~/Scripts/Page/pager.css" rel="stylesheet" ...
- JQuery.Page.js分页插件的使用
1.简单直接贴代码 需要引用以下样式和脚本 <link href="~/Scripts/Page/pager.css" rel="stylesheet" ...
- js jquery.pagination.js分页
1.使用插件为 jquery.pagination.js ,如果没有这个js文件的话,我可以给发个. 首先引用 jquery.pagination.js (分页js),跟pagination.css( ...
- MVC如何使用开源分页插件shenniu.pager.js
最近比较忙,前期忙公司手机端接口项目,各种开发+调试+发布现在几乎上线无问题了:虽然公司项目忙不过在期间抽空做了两件个人觉得有意义的事情,一者使用aspnetcore开发了个人线上项目(要说线上其实只 ...
随机推荐
- Time-travel Models
1. Standard Iterative Branching model Source Code Butterfly Effect Next Edge of Tomorrow D ...
- git flow工作流实际项目实践
公司项目的开发流程主要是这样 代码分为 develop分支 master分支 平时我开发的时候,主要在develop分支上改动 一般来讲,有以下几种改动方式 1.直接在develop上修改代码 这种一 ...
- linux shell重定向总结
command-line1 [-n] > file或文件操作符或设备 command-line1 [-n] >> file或文件操作符或设备 >suc.txt >err. ...
- jquery常见获取高度
jquery获取文档高度和窗口高度,$(document).height().$(window).height() $(document).height():整个网页的文档高度 $(window).h ...
- 解决 adb.exe 停止工作小续
继adb 停止工作的问题之后,又碰见了adb 停止工作的问题. 在使用adb install app.apk 之后给出错误信息如下: * daemon not running. starting it ...
- 解决:View调用invalidate()后不刷新onDraw()
近来学android图片处理,按照例子来,自定义一个View,之后在Activity里面手动调用该View的invalidate()后,一直无法刷新onDraw() 上网搜了一下,有两种解决办法: 一 ...
- Hbuilder开发HTML5 APP之创建子页面
折腾了好久,终于看明白怎么创建了: 1.创建个html5的mui页面,在其初始化方法中: mui.init({ subpages:[{ id:"list", url: ...
- java 引入自定义字体font后出现的硬盘吃光的问题
有个需求要用美术字体在图片上写字 用自定义的文字有两个方法: 1. Font dynamicFont = Font.createFont(Font.TRUETYPE_FONT, InputStream ...
- [学习笔记] Inten
- 参加MVP OpenDay 和2015 MVP Community Camp社区大课堂
微软MVP Openday 1月30日在北京召开,到时全国上百位 MVP 专家将齐聚北京.当然还有亚太的其他国家地区的MVP 也会来北京,1月31日微软 MVP 项目组主办的年度微软技术社区分享大会- ...