自己动手写的jquery分页控件(非常简单实用)


Posted in Javascript onOctober 28, 2015

最近接了一个项目,其中有需求要用到jquery分页控件,上网也找到了需要分页控件,各种写法各种用法,都是很复杂,最终决定自己动手写一个jquery分页控件,全当是练练手了。写的不好,还请见谅,本分页控件在chrome测试过,其他的兼容性不知道怎么没时间测试呢。欢迎有同样需求的小伙伴采用,在使用过程发现有问题欢迎提出批评建议。

 自己动手写的jquery分页控件(非常简单实用)

css:

@charset "utf-";
* {
margin:px;
padding:px;
font-family:"微软雅黑";
font-size:px;
}
._ul {
float:left;
height:px;
display:block;
}
._ul li {
list-style-type:none;
height:px;
width:px;
border:px solid #eee;
cursor:pointer;
text-align:center;
line-height:px;
color:blue;
float:left;
margin: px;
}
._ul li:hover,._before:hover,._after:hover {
border:px solid #f;
background: #ffff;
}

.li-hover {
border:px solid #f;
background: #ffff;
}

._before {
width:px;
height:px;
border:px solid #eee;
float:left;
cursor:pointer;
text-align:center;
line-height:px;
color:blue;
margin: px;
}
._after {
width:px;
height:px;
border:px solid #eee;
float:left;
cursor:pointer;
text-align:center;
line-height:px;
color:blue;
margin: px;
}

.Hidden {
display:none;
}
._select {
border:px solid #fff !important;
color:black !important;
}
._left {
float:left;
margin-left:px;
}
._right {
float:right;
margin-right:px;
}

js:

; (function ($, window, document, undefined) {
var isShow = function (ele,options) {
this.$element = ele,
this.defaults = {
maxpage: ,
count: ,
total: ,
float: 'right',
margin:'px',
getData:null
},
this.options = $.extend({}, this.defaults, options)
}
isShow.prototype={
showDiv:function(){
this.bindEvent();
},
showHtml:function(){
var _this = this, strHtml = "",count=Math.ceil(_this.options.total / _this.options.count);
strHtml += "<div class='"+(_this.options.float=='right'?'_right':'_left')+"'><div class='_before Hidden'><上一页</div><ul class='_ul'>";
for (var i = ; i <= count ; i++) {
strHtml += "<li data-index='"+(i==?'frist':i==count?'last':'middle')+"' class='"+(i==?'_select':'')+" "+(i>_this.options.maxpage?'Hidden':'')+"'>"+i+"</li>";
}
strHtml += "</ul><div class='_after'>下一页></div></div>";
_this.$element.append(strHtml);
},
MoveIndex:function(index){
var _this = this, _index = this.options.maxpage, count = Math.ceil(_this.options.total / _this.options.count);
var middle = _index / ;
var curr = _this.$element.find("li");
if (count <= _index) {
$(curr).show();
} else {
var ftemp = ,ltemp=;
if (index < middle)
ftemp = (middle - index);
if (middle > count - index)
ltemp=(middle-(count-index));
$(curr).each(function () {
var currindex = parseInt($(this).text());
if (currindex > index - middle-ltemp && currindex <= parseInt(index) + parseInt(middle)+ftemp) {
$(this).show();
} else {
$(this).hide();
}
});
} 
},
WhichFind:function(status,_index){
var _this=this;
switch (status) {
case 'frist':
_this.$element.find("._before").hide();
_this.$element.find("._after").show();
break;
case 'last':
_this.$element.find("._after").hide();
_this.$element.find("._before").show();
break;
case 'middle':
_this.$element.find("div").show();
break;
}
_this.MoveIndex(_index);
_this.options.getData({ index: _index });
},
bindEvent:function(){
var _this = this;
_this.showHtml();
_this.$element.find("li").click(function () {
var status = $(this).data("index"), _index = $(this).text();
$(this).addClass("_select").siblings().removeClass("_select");
_this.WhichFind(status,_index);
});

_this.$element.find("._before").click(function () {
var status = $("._select").prev().data("index"), _index = $("._select").prev().text();
$("._select").prev().addClass("_select").siblings().removeClass("_select");
_this.WhichFind(status,_index);
});

_this.$element.find("._after").click(function () {
var status = $("._select").next().data("index"), _index = $("._select").next().text();
$("._select").next().addClass("_select").siblings().removeClass("_select");
_this.WhichFind(status,_index);
});
}
}
$.fn.FY = function (option) {
var fs = new isShow(this, option);
return fs.showDiv();
}
})(jQuery,window,document);

以上内容是小编给大家分享的自己动手写的jquery分页控件(非常简单实用),希望对大家有所帮助。

Javascript 相关文章推荐
在线游戏大家来找茬II
Sep 30 Javascript
javascript引导程序
Oct 26 Javascript
window.location和document.location的区别分析
Dec 23 Javascript
如何通过非数字与字符的方式实现PHP WebShell详解
Jul 02 Javascript
swiper移动端轮播插件(触碰图片之后停止轮播)
Dec 28 Javascript
ES6知识点整理之函数对象参数默认值及其解构应用示例
Apr 17 Javascript
使用Vue中 v-for循环列表控制按钮隐藏显示功能
Apr 23 Javascript
vue2之简易的pc端短信验证码的问题及处理方法
Jun 03 Javascript
Ant Design Vue 添加区分中英文的长度校验功能
Jan 21 Javascript
element-ui和vue表单(对话框)验证提示语(残留)清除操作
Sep 11 Javascript
详细分析JavaScript中的深浅拷贝
Sep 17 Javascript
JavaScript中document.activeELement焦点元素介绍
Nov 27 Javascript
Jquery日历插件制作简单日历
Oct 28 #Javascript
使用CoffeeScrip优美方式编写javascript代码
Oct 28 #Javascript
开启Javascript中apply、call、bind的用法之旅模式
Oct 28 #Javascript
JavaScript多并发问题如何处理
Oct 28 #Javascript
JS实现双击屏幕滚动效果代码
Oct 28 #Javascript
基于JavaScript如何实现私有成员的语法特征及私有成员的实现方式
Oct 28 #Javascript
jQuery实现滑动页面固定顶部显示(可根据显示位置消失与替换)
Oct 28 #Javascript
You might like
详细介绍PHP应用提速面面观
2006/10/09 PHP
php发送get、post请求的6种方法简明总结
2014/07/08 PHP
PHP+AJAX 投票器功能
2017/11/11 PHP
JQury slideToggle闪烁问题及解决办法
2011/07/05 Javascript
深入理解JavaScript系列(4) 立即调用的函数表达式
2012/01/15 Javascript
alert中断settimeout计时功能
2013/07/26 Javascript
js中回调函数的学习笔记
2014/07/31 Javascript
jQuery动画与特效详解
2015/02/01 Javascript
JS数组合并push与concat区别分析
2015/12/17 Javascript
jquery ajax结合thinkphp的getjson实现跨域的方法
2016/06/06 Javascript
Jquery鼠标放上去显示全名的实现方法
2017/02/06 Javascript
jQuery实现导航样式布局操作示例【可自定义样式布局】
2018/07/24 jQuery
使用JQuery自动完成插件Auto Complete详解
2019/06/18 jQuery
vue将后台数据时间戳转换成日期格式
2019/07/31 Javascript
vue.js实现三级菜单效果
2019/10/19 Javascript
javascript设计模式 ? 单例模式原理与应用实例分析
2020/04/09 Javascript
详解JavaScript中的数据类型,以及检测数据类型的方法
2020/09/17 Javascript
[01:01]青春无憾,一战成名——DOTA2全国高校联赛开启
2018/02/25 DOTA
Python使用pyautogui模块实现自动化鼠标和键盘操作示例
2018/09/04 Python
使用python判断你是青少年还是老年人
2018/11/29 Python
python实现年会抽奖程序
2019/01/22 Python
Tensorflow: 从checkpoint文件中读取tensor方式
2020/02/10 Python
北美最大的手工艺品零售商之一:Michaels Stores
2019/02/27 全球购物
C语言50道问题
2014/10/23 面试题
院药学专业个人求职信
2013/09/21 职场文书
个人求职信范文分享
2014/01/06 职场文书
村捐赠仪式答谢词
2014/01/21 职场文书
《泉水》教学反思
2014/04/11 职场文书
班级旅游计划书
2014/05/03 职场文书
年度考核表个人总结
2015/03/06 职场文书
讲文明倡议书
2015/04/29 职场文书
2015教师年度思想工作总结
2015/04/30 职场文书
如何写观后感
2015/06/19 职场文书
2016年国庆节新闻稿范文
2015/11/25 职场文书
HTML速写之Emmet语法规则的实现
2021/04/07 HTML / CSS
Python利用Turtle绘制哆啦A梦和小猪佩奇
2022/04/04 Python