亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

jquery+css3打造一款ajax分頁插件(自寫)

2019-11-20 14:26:49
字體:
來源:轉載
供稿:網友

最近公司的項目將好多分頁改成了ajax的前臺分頁
以前寫的分頁插件就不好用了,遂重寫一個

支持IE6+,但沒有動畫效果
如果沒有硬需求,個人認為沒必要多寫js讓動畫在這些瀏覽器中實現
css3的動畫本來就是幫我們取代js中這部分動畫代碼的
使js更純粹地去實現邏輯

效果圖如下:

調用代碼如下:

包括常用的加載失敗重試,參數可配置是否能手動輸入頁碼,設置按鈕數目,可以調用多個page等等,調用代碼很簡便

<script type="text/javascript"> var kpage; $(function () {  tocount(); }); function tocount() {  //初始化  $.ajax({ url: "/Service/DBCount", type: "post", success: function (e) {   kpage = $("#divPage").page({ dataCount: e, pageChange: topage });  }  }); } function topage(i, s) {  //數據查詢  $("#divInfo").html("加載中...");  $.ajax({ url: "/Service/List", type: "post", data: { PageSize: s, PageIndex: i }, success: function (r) {   $("#tList").html(r);   $("#divInfo").html("");  }, error: function () {   $("#divInfo").html("加載失敗...<a href='javascript:reload();'>重試</href>");  }  }); } function reload() {  kpage.reload(); }</script>

具體jquery.kun_page.js:

/*jquery.kun_page.jslxk 2014.06.16www.cnblogs.com/wingkun---------------------------------參數config:dataCount:數據總數pageSize:頁數據條數maxButton:頁碼按鈕數目 showCustom:是否能手動輸入頁碼 pageChange:頁變更事件參數:(i,s,c)i:pageIndex,當前頁s:pageSize,頁數據條數c:pageCount,總頁數*/(function($){$.fn.page = function (config) { if (this.length != 1) {  throw "k_page:如有多個page請調用多次!"; }  var defaults = { dataCount: 1, pageSize: 10, maxButton: 6, showCustom: true, pageChange: null } config = $.extend(defaults, config); if (config.maxButton <= 1) config.maxButton = 2; if (config.pageSize < 1) config.pageSize = 1; //按鈕數目需偶數 if (config.maxButton % 2 != 0)  config.maxButton++; var pageIndex = 1, pageCount, move_kf; //初始化頁數 function initcount() {  pageCount = config.dataCount % config.pageSize == 0 ? config.dataCount / config.pageSize : parseInt(config.dataCount / config.pageSize) + 1; } initcount(); var prev = "
上一頁
", next = "
下一頁
", pbody = $(""), pcustom = $("到第  頁
確定
"), cl = "
", pipt = $(""); this.empty().addClass("kun_page").append(prev); pipt.keypress(function (e) { if (e.which == 13) { topage("確定"); return false; } }).appendTo(pcustom.children()); if (config.pageChange) { this.unbind("click").bind("click", function (e) { var _t = $(e.target); if (_t[0].tagName == "DIV" && _t[0].className != "kun_page") { topage(_t.text()); } }); } //跳轉頁碼 function topage(text) { switch (text) { case "上一頁": if (pageIndex - 1 < 1) { return; } pageIndex--; move_kf = "sc_r"; break; case "下一頁": if (pageIndex + 1 > pageCount) { return; } pageIndex++; move_kf = "sc_l"; break; case "確定": if (!/^/d+$/.test(pipt.val())) { pipt.val(""); return; } text = parseInt(pipt.val()); if (text < 1 || text > pageCount) { pipt.val(""); return; } default: var _pindex = parseInt(text); if (pageIndex == _pindex) return; move_kf = pageIndex < _pindex ? "sc_l" : "sc_r"; pageIndex = _pindex; break; } gopageChange(); } //頁變更事件 function gopageChange() { if (config.pageChange) { if (config.dataCount != 0) { config.pageChange(pageIndex, config.pageSize, pageCount); endloading(); } } } //異步加載結束 function endloading() { initpage(); } //添加頁碼 function initpage() { pbody.empty(); var _t_maxb = config.maxButton / 2; //前后頁碼集合 var _t_listp = [], _t_listn = []; var _min = 0, _max = pageCount; for (var i = 1; i <= _t_maxb; i++) { var _t_prev = pageIndex - i, _t_next = pageIndex + i; //當前頁碼之前的頁 if (_t_prev > 0) { _t_listp.push("
" + _t_prev + "
"); if (i == _t_maxb) _min = _t_prev; } //當前頁碼之后的頁 if (_t_next <= pageCount) { _t_listn.push("
" + _t_next + "
"); if (i == _t_maxb) _max = _t_next; } } //顯示第一頁 if (_min > 1) pbody.append("
1
"); //顯示前 …… if (_min - 1 > 1) pbody.append("..."); for (var i = _t_listp.length; i >= 0; i--) { pbody.append(_t_listp[i]); } pbody.append("
" + pageIndex + "
"); for (var i = 0; i < _t_listn.length; i++) { pbody.append(_t_listn[i]); } //顯示后 …… if (pageCount - _max > 1) pbody.append("..."); //顯示最后一頁 if (_max < pageCount) pbody.append("
" + pageCount + "
"); } initpage(); gopageChange(); this.append(pbody).append(next); if (config.showCustom) this.append(pcustom); this.append(cl); return { reload: gopageChange, pageCount: pageCount, recount: function (e) { //重新計算頁數 config.dataCount = e; pageIndex = 1; initcount(); initpage(); gopageChange(); } }; //console.log(_min + "*" + _max + "*" + pageCount);}})(jQuery)

樣式kun_page.css:

/* kun_page.css lxk 2014.06.16 www.cnblogs.com/wingkun*/.kun_page {font-size: 12px;line-height:23px;font-family:"Microsoft YaHei";}.kun_page .k_p_page{position:relative;}.kun_page div {float: left;margin: 3px;border: solid 1px #ccc;cursor: pointer;color: #333;min-width:12px;text-align:center;padding:0px 5px;}.kun_page em {display: block;float: left;margin: 2px;}.kun_page .k_p_current {background: #ccc;color: #fff;-webkit-animation:scroll_b 300ms;animation:scroll_b 300ms;}.kun_page .k_cl {clear: both;float: none;border: none;margin: 0px;padding: 0px;width:0px;height:0px;}.kun_page .k_custom {display: block;float: left;margin: 3px 3px 3px 20px;}.kun_page .k_ipt {width: 30px;height: 21px;border: solid 1px #ccc;text-align: center;vertical-align:middle;}.kun_page .k_m{ opacity: 0; width: 1%; height: 1%;top:0px;left:0px; display:block; position: absolute; }.kun_page .sc_l{background: -webkit-gradient(linear, 0 100%, 100% 100%, from(#CCCCCC), to(#645F5F)); -webkit-transform:translate(-50px);-webkit-animation:scroll_k_l 300ms linear; background: -moz-linear-gradient(left,#CCCCCC 0%, #645F5F 100%); background: -ms-linear-gradient(left,#CCCCCC 0%, #645F5F 100%); transform:translate(-50px);animation:scroll_k_l 300ms linear;  }.kun_page .sc_r{background: -webkit-gradient(linear, 0 100%, 100% 100%, from(#645F5F), to(#CCCCCC)); -webkit-transform:translate(50px); -webkit-animation:scroll_k_r 300ms linear; background: -moz-linear-gradient(left, #645F5F 0%, #CCCCCC 100%); background: -ms-linear-gradient(left,#CCCCCC 0%, #645F5F 100%); transform:translate(50px); animation:scroll_k_r 300ms linear; }/*animation*/@-webkit-keyframes scroll_k_l{0%{-webkit-transform:translate(-100px);opacity:0.2;width:200%;height:100%;}99%{-webkit-transform:translate(-20px);opacity:0;width:200%;height:100%;}100%{-webkit-transform:translate(-20px);opacity:0;width:1%;height:1%;}}@-webkit-keyframes scroll_k_r{0%{-webkit-transform:translate(100px);opacity:0.2;width:200%;height:100%;}99%{-webkit-transform:translate(20px);opacity:0;width:200%;height:100%;}100%{-webkit-transform:translate(20px);opacity:0;width:1%;height:1%;}}@keyframes scroll_k_l{0%{transform:translate(-100px);opacity:0.2;width:200%;height:100%;}99%{transform:translate(-20px);opacity:0;width:200%;height:100%;}100%{transform:translate(-20px);opacity:0;width:1%;height:1%;}}@keyframes scroll_k_r{0%{transform:translate(100px);opacity:0.2;width:200%;height:100%;}99%{transform:translate(20px);opacity:0;width:200%;height:100%;}100%{transform:translate(20px);opacity:0;width:1%;height:1%;}}@-webkit-keyframes scroll_b{0%,99%{background: #fff;color: #000;}100%{background: #ccc;color: #fff;}}@keyframes scroll_b{0%,99%{background: #fff;color: #000;}100%{background: #ccc;color: #fff;}}

樣式和動畫都可以自己修改(好吧,動畫效果很樸素,鬧哪樣,明明想了很久好嗎)

pageChange事件里面也沒有過多的其他處理,比如我們公司前后臺處理json就有一套方案,ajax提交的參數也有處理

所以若有需求,完全可以在我的代碼上再封裝一層

另外插件內公開的方法暫只有幾個,可視情況增加

代碼下載(后臺查詢代碼需要自己寫一個):這里

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美激情乱人伦一区| 国产亚洲视频中文字幕视频| 国产精品自拍偷拍视频| 国产美女精品视频免费观看| 97在线视频免费看| 欧美亚洲国产精品| 亚洲欧洲日产国码av系列天堂| 国产精品激情av电影在线观看| 久久夜色精品亚洲噜噜国产mv| 久久精品最新地址| 亚洲深夜福利在线| 国产精品第七影院| 久久亚洲一区二区三区四区五区高| 欧美在线视频观看| 欧美国产视频日韩| 亚洲福利视频二区| 国产在线高清精品| 亚洲精品国精品久久99热一| 成人黄色av免费在线观看| 色狠狠av一区二区三区香蕉蜜桃| 欧美成人国产va精品日本一级| 久久精品成人欧美大片古装| 欧美精品在线极品| 亚洲夜晚福利在线观看| 欧美激情综合色| 国模精品视频一区二区三区| 国产精品男人的天堂| 亚洲精品乱码久久久久久金桔影视| 色综合色综合久久综合频道88| 97久久精品人人澡人人爽缅北| 国产欧美日韩精品丝袜高跟鞋| 欧美有码在线观看视频| 51精品国产黑色丝袜高跟鞋| 日韩在线视频二区| 精品少妇v888av| 国产香蕉精品视频一区二区三区| 人妖精品videosex性欧美| 久久久久久网址| 热门国产精品亚洲第一区在线| 日韩欧美大尺度| 国产精品美女999| 国产伊人精品在线| 欧美日韩一区免费| 欧美亚洲日本网站| 3344国产精品免费看| 国产97免费视| 国产色视频一区| 亚洲欧美国产另类| 成人高清视频观看www| 国产精品美乳一区二区免费| 久久免费视频网站| 波霸ol色综合久久| 欧美高清在线观看| 富二代精品短视频| 久久久久久国产精品久久| 91系列在线观看| 国产69精品久久久久99| 亚洲男人av电影| 国内精品久久久久久久久| 亚洲美女激情视频| 欧美电影在线播放| 久久99热这里只有精品国产| 日韩精品在线视频美女| 亚洲欧美一区二区激情| 欧美日韩国产中文精品字幕自在自线| 国产精品视频不卡| 国产精品69精品一区二区三区| 亚洲第一国产精品| 两个人的视频www国产精品| 欧美日韩亚洲激情| 黑人巨大精品欧美一区二区三区| 久久免费福利视频| 国产欧美一区二区三区视频| 欧美性猛交xxxx乱大交极品| 欧美成人精品在线| 久久免费视频网站| 日韩中文字幕国产精品| 日韩欧美成人精品| 亚洲欧美资源在线| 日韩有码在线观看| 亚洲精品自产拍| 国产+人+亚洲| 亚洲国产欧美一区二区三区同亚洲| 欧美激情精品久久久久久黑人| 国模叶桐国产精品一区| 亚洲激情电影中文字幕| 国产成人精品一区二区三区| 久久精品视频在线观看| 日产精品99久久久久久| 亚洲女人初尝黑人巨大| 欧美日韩国产999| 精品中文字幕久久久久久| 欧美孕妇毛茸茸xxxx| 亚洲国产婷婷香蕉久久久久久| 在线播放亚洲激情| 亚洲欧美中文另类| 亚洲999一在线观看www| 欧美精品免费在线| 91久久久亚洲精品| 亚洲精品大尺度| 国产精品久久久久久久久久久久久久| 欧美乱妇高清无乱码| 欧美精品九九久久| 亚洲电影免费观看高清完整版在线| 国产999视频| 日韩中文字幕在线观看| 国产成人精品久久二区二区| 成人网欧美在线视频| 91精品国产乱码久久久久久久久| 成人夜晚看av| 成人激情免费在线| 精品调教chinesegay| 欧美日韩亚洲成人| 国产手机视频精品| 亚洲精品国产成人| 国产精品久久久久久久久久久久久| 国产日韩欧美综合| 91经典在线视频| 在线观看国产欧美| 亚洲欧洲第一视频| 精品毛片三在线观看| 欧美性xxxxxxx| 国产欧美一区二区白浆黑人| 中文字幕亚洲综合久久筱田步美| 欧美激情一级精品国产| 精品国产户外野外| 欧美精品videosex牲欧美| 久久人91精品久久久久久不卡| 粗暴蹂躏中文一区二区三区| 成人av在线亚洲| 蜜臀久久99精品久久久无需会员| 国产精品久久婷婷六月丁香| 亚洲理论电影网| 日韩av片永久免费网站| 日本午夜人人精品| 国产女人18毛片水18精品| 欧美黑人狂野猛交老妇| 国产精品免费观看在线| 国产精品久久久久久久一区探花| 插插插亚洲综合网| 久久在精品线影院精品国产| 欧美在线亚洲一区| 国产精品午夜一区二区欲梦| 国产丝袜一区二区三区免费视频| 欧美成在线观看| 久久人人爽人人爽爽久久| y97精品国产97久久久久久| 91夜夜未满十八勿入爽爽影院| 久久精品国产一区二区三区| 久久精品久久精品亚洲人| 最新亚洲国产精品| 亚洲欧洲黄色网| 成人激情视频小说免费下载| 伊人久久男人天堂| 一区二区在线免费视频| 精品中文字幕视频| 日韩欧美在线观看| 久久久久久久国产| 亚洲曰本av电影| 久久亚洲精品一区二区| 日本精品免费一区二区三区| 最新69国产成人精品视频免费| 亚洲天堂av女优| 一色桃子一区二区|