使用JQuery實現(xiàn)的分頁插件分享
一個簡單的jQuery分頁插件,兼容AMD規(guī)范和requireJS.
/**
* jQuery分頁插件
* */
;(function (factory) {
if (typeof define === "function" && define.amd) {
// AMD模式
define([ "jquery" ], factory);
} else {
// 全局模式
factory(jQuery);
}
}(function ($) {
//定義MyPagePlugin的構造函數(shù)
MyPagePlugin = function(ele, option) {
// this.viewHtml="<nav><ul class='pagination'><li><a id='firstPageli'>«</a></li><li><a id='prevPageli'>‹</a></li><li class='active'><a>第<span id='curPageNoSpan'></span>頁,共<span id='allPageCountSpan'></span>頁</a></li><li><a id='nextPageli'>›</a></li><li><a id='lastPageli'>»</a></li></ul></nav>";
this.viewHtml= "<div class='pageplugin'><a class='first firstPageli'>«</a><a class='previous prevPageli'>‹</a><a class='present'>第<span class='curPageNoSpan'></span>頁,共<span class='allPageCountSpan'></span>頁</a><a class='next nextPageli'>›</a><a class='last lastPageli'>»</a></div>"
this.$element = ele;
/**參數(shù):page:當前頁,pageCount:總共頁數(shù),onPaged回調函數(shù),回調函數(shù)會傳入頁數(shù)*/
this.defaults = {
page:1,
pageCount:1,
onPaged:function(pageNo){}
};
this.options = $.extend({}, this.defaults, option);
}
//定義MyPagePlugin的方法
MyPagePlugin.prototype = {
initPlugin:function(){
this.$element.empty();
this.$element.append(this.viewHtml);
this.options.onPaged(this.options.page);//初始化
this.$element.find(".curPageNoSpan").text(this.options.page);
this.$element.find(".curPageNoSpan").data("options",this.options);
this.$element.find(".allPageCountSpan").text(this.options.pageCount);
this.$element.find(".firstPageli").on("click",function(e){
var curNo=$(e.currentTarget).parent("div.pageplugin").find(".curPageNoSpan").text();
curNo=parseInt(curNo);
if(curNo==1){
return false;
}else{
$(e.currentTarget).parent("div.pageplugin").find(".curPageNoSpan").data("options").onPaged(1);
$(e.currentTarget).parent("div.pageplugin").find(".curPageNoSpan").text(1);
}
return false;
});
this.$element.find(".prevPageli").on("click",function(e){
var curNo=$(e.currentTarget).parent("div.pageplugin").find(".curPageNoSpan").text();
curNo=parseInt(curNo);
if(curNo==1){
return false;
}else{
$(e.currentTarget).parent("div.pageplugin").find(".curPageNoSpan").data("options").onPaged(curNo-1);
$(e.currentTarget).parent("div.pageplugin").find(".curPageNoSpan").text(curNo-1);
}
return false;
});
this.$element.find(".nextPageli").on("click",function(e){
var curNo=$(e.currentTarget).parent("div.pageplugin").find(".curPageNoSpan").text();
curNo=parseInt(curNo);
var pageCount=$(e.currentTarget).parent("div.pageplugin").find(".allPageCountSpan").text();
pageCount=parseInt(pageCount);
if(curNo==pageCount){
return false;
}else{
$(e.currentTarget).parent("div.pageplugin").find(".curPageNoSpan").data("options").onPaged(curNo+1);
$(e.currentTarget).parent("div.pageplugin").find(".curPageNoSpan").text(curNo+1);
}
return false;
});
this.$element.find(".lastPageli").on("click",function(e){
var curNo=$(e.currentTarget).parent("div.pageplugin").find(".curPageNoSpan").text();
curNo=parseInt(curNo);
var pageCount=$(e.currentTarget).parent("div.pageplugin").find(".allPageCountSpan").text();
pageCount=parseInt(pageCount);
if(curNo==pageCount){
return false;
}else{
$(e.currentTarget).parent("div.pageplugin").find(".curPageNoSpan").data("options").onPaged(pageCount);
$(e.currentTarget).parent("div.pageplugin").find(".curPageNoSpan").text(pageCount);
}
return false;
});
}
}
$.fn.pagePlugin = function (option) {
var pagePlugin=new MyPagePlugin(this,option);
pagePlugin.initPlugin();
};
}));
CSS
.pageplugin {
display: inline-block;
border: 1px solid #CDCDCD;
border-radius: 3px; }
.pageplugin a {
cursor: pointer;
display: block;
float: left;
width: 20px;
height: 20px;
outline: none;
border-right: 1px solid #CDCDCD;
border-left: 1px solid #CDCDCD;
color: #767676;
vertical-align: middle;
text-align: center;
text-decoration: none;
font-weight: bold;
font-size: 16px;
font-family: Times, 'Times New Roman', Georgia, Palatino;
background-color: #f7f7f7;
/* ATTN: need a better font stack
background-color: #f7f7f7;
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f3f3f3), color-stop(100%, lightgrey));
background-image: -webkit-linear-gradient(#f3f3f3, lightgrey);
background-image: linear-gradient(#f3f3f3, lightgrey); */}
.pageplugin a:hover, .pageplugin a:focus, .pageplugin a:active {
color:#0099CC;
background-color: #cecece;
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #e4e4e4), color-stop(100%, #cecece));
background-image: -webkit-linear-gradient(#e4e4e4, #cecece);
background-image: linear-gradient(#e4e4e4, #cecece); }
.pageplugin a.disabled, .pageplugin a.disabled:hover, .pageplugin a.disabled:focus, .pageplugin a.disabled:active {
background-color: #f3f3f3;
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f3f3f3), color-stop(100%, lightgrey));
background-image: -webkit-linear-gradient(#f3f3f3, lightgrey);
background-image: linear-gradient(#f3f3f3, lightgrey);
color: #A8A8A8;
cursor: default; }
.pageplugin a:first-child {
border: none;
border-radius: 2px 0 0 2px; }
.pageplugin a:last-child {
border: none;
border-radius: 0 2px 2px 0; }
.pageplugin .present {
float: left;
margin: 0;
padding: 0;
width: 120px;
height: 20px;
outline: none;
border: none;
vertical-align: middle;
text-align: center; }
jquery分頁插件cypager
cypager是網(wǎng)友分享到JquerySchool網(wǎng)站上的一款作品,非常實用,經(jīng)過測試,插件兼容 IE8+,Chrome,Firefox 瀏覽器,核心文件僅 5KB。。。
調用方式
由于是 jquery插件,所以在引人 cypager.min.js 之前,要引人 jquery.min.js 本人使用的是 1.7.2 版本的,低版本的沒試過。
引入css : <link rel="stylesheet" href="css/cypager.min.css" />
引人js : <script type="text/javascript" src="js/cypager.min.js"/>
$(function(){
$("#pagerArea").cypager({pg_size:10,pg_nav_count:8,pg_total_count:194,pg_call_fun:function(count){
alert("跳轉至頁面:"+count+"");
}});
});
參數(shù)說明
pgerId //插件的ID 默認 : cy_pager
pg_size //每頁顯示記錄數(shù) 默認:10條
pg_cur_count //當前頁數(shù)(如果需要默認顯示指定頁面,則設置)
pg_total_count //總記錄數(shù)
pg_nav_count //顯示多少個導航數(shù) 默認:7個
pg_prev_name //上一頁按鈕名稱(默認:PREV)
pg_next_name //下一頁按鈕名稱 (默認:NEXT)
pg_call_fun(page_count) //回調函數(shù),點擊按鈕執(zhí)行
高效JQUERY分頁插件源代碼JQUERY.PAGER.JS
本文將給大家分享一個非常不錯的分頁插件、jQuery.pager.js、該插件的優(yōu)點是可以內容索引、使用了jQuery、也同時調用了jquery.pager.js文件、分頁都是基于Ajax的、當然、如果你不打算使用Ajax來實現(xiàn)分頁的話、那么你最好不要使用本插件、若使用的話反而很麻煩、本插件主要是為使用Ajax技術交互的網(wǎng)站所準備、可以很方便的嵌入到網(wǎng)站系統(tǒng)中、實現(xiàn)Ajax分頁功能、如果大家覺得這個效果不是很好看的話、可以自己重寫分頁按鈕的樣式哈
HTML代碼很簡單、只要準備一個用于分頁代碼的DIV就可以了
<div class="tcdPageCode"></div>
通過jQuery的方式調用即可
$(".tcdPageCode").createPage({
pageCount:6,
current:1,
backFn:function(p){
console.log(p);
}
});
- jQuery Pagination Ajax分頁插件(分頁切換時無刷新與延遲)中文翻譯版
- jquery分頁插件jquery.pagination.js使用方法解析
- Jquery 分頁插件之Jquery Pagination
- 最實用的jQuery分頁插件
- 分享一個自己動手寫的jQuery分頁插件
- Ajax分頁插件Pagination從前臺jQuery到后端java總結
- jQuery ajax分頁插件實例代碼
- 基于bootstrap3和jquery的分頁插件
- jQuery插件分享之分頁插件jqPagination
- jquery ajax分頁插件的簡單實現(xiàn)
- jquery+css3打造一款ajax分頁插件(自寫)
- jQuery實現(xiàn)的分頁插件完整示例
相關文章
servlet+jquery實現(xiàn)文件上傳進度條示例代碼
現(xiàn)在文件的上傳,特別是大文件上傳,都需要進度條。這篇文章主要介紹了servlet+jquery實現(xiàn)文件上傳進度條示例代碼,有興趣的可以了解一下。2017-01-01
jQuery 點擊圖片跳轉上一張或下一張功能的實現(xiàn)代碼
jQuery獲取當前鼠標相對位置坐標和點擊圖片跳轉上一張或下一張功能2010-03-03
jquery的checkbox,radio,select等方法小結
jquery的checkbox,radio,和select是jquery操作的一個難點和重點,很多前端新手對其了解不是很透徹。時間久了不用,我在寫的時候有時也難免對某些操作支支吾吾,記不清楚,現(xiàn)在,對其做一些簡單的總結2016-08-08

