JavaScript实现分页效果


Posted in Javascript onMarch 28, 2017

效果图:

JavaScript实现分页效果

代码如下:

<html>
 <head>
  <style>
   *{padding:0;margin:0}
   ul,li{list-style:none}
   .left{float:left}
   .right{float:left}
   .page_container{height: 30px; line-height: 30px;width: 510px;overflow: hidden;text-align: center;padding: 30px 0;color: #757575;}
   .page_num_container{width: 301px;margin:0 10px;border:1px solid #ccc; border-right:0;box-sizing: border-box;overflow: hidden;position: relative;height: 32px;}
   .page_num_container ul{position: absolute;top: 0;}
   .page_num_container ul li{float: left;width: 30px;border-right:1px solid #ccc ;box-sizing: border-box;text-align: center;cursor: pointer;}
   .page_num_container ul li:hover,.page_num_container ul li.active{ background: #f4a100;color: #fff;}
   .page_btn{width: 60px;border:1px solid #ccc;box-sizing: border-box;cursor: pointer;}
   .page_btn:hover{ background: #f4a100;color: #fff;}
   .all_page:hover{background:none;color: #757575;}
   .prev_btn{margin-right: 10px;}
  </style>
  <script src="http://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
 </head>
<body>
<!--页码-->
 <div class="page_container center">
  <div class="page_btn prev_page left">上一页</div>
  <div class="page_num_container left" id="page_num_container">
  <ul>
  <li>1</li>
  <li>2</li>
  <li>3</li>
  <li>4</li>
  <li>5</li>
  <li>6</li>
  <li>7</li>
  <li>8</li>
  <li>9</li>
  <li>10</li>
  <li>11</li>
  <li>12</li>
  <li>13</li>
  <li>14</li>
  <li>15</li>
  <li>16</li>
  <li>17</li>
  <li>18</li>
  <li>19</li>
  <li>20</li>
  <li>21</li>
  </ul>
  </div>
  <div class="page_btn next_page left">下一页</div>
  <div class="page_btn all_page right">共21页</div>
 </div>
 <!--页码-->
 <script>
  function page(){
  var contain=$(".page_num_container");
  var ul= contain.children("ul");
  var li = ul.children("li");
  var length= li.length;
  var index=0;
  var leftIndex=0;
  var prev_btn= contain.siblings(".prev_page");
  var next_btn= contain.siblings(".next_page ");
  ul.css("width",li.outerWidth()*length);
  change_page(index);
  function change_page(eqindex){
  if(eqindex<0 )
  {
  index=0;
  }
  else if(eqindex>=length ){
  index=length-1;
  }
  if(index-4<=0){
  leftIndex=0;
  }
  else if(index>length-10)
  {
  leftIndex=Math.ceil(length/2);
  }
  else{
  leftIndex=index-4;
  }
  ul.animate({"left":"-"+leftIndex*li.outerWidth()+"px"},200);
  li.eq(index).addClass("active").siblings(li).removeClass("active");
  }
  prev_btn.click(function(){
  index=index-1;
  change_page(index);
  })
  next_btn.click(function(){
  index=index+1;
  change_page(index);
  })
  li.click(function(){
  index=$(this).index();
  change_page(index);
  })
 }
 page()
  </script>
 </body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
用JavaScript脚本实现Web页面信息交互
Dec 21 Javascript
使用JavaScript检测Firefox浏览器是否启用了Firebug的代码
Dec 28 Javascript
jQuery easyui datagrid动态查询数据实例讲解
Feb 26 Javascript
javascript封装简单实现方法
Aug 11 Javascript
微信小程序 用户数据解密详细介绍
Jan 09 Javascript
客户端(vue框架)与服务器(koa框架)通信及服务器跨域配置详解
Aug 26 Javascript
JavaScript学习总结(一) ECMAScript、BOM、DOM(核心、浏览器对象模型与文档对象模型)
Jan 07 Javascript
Vue引用第三方datepicker插件无法监听datepicker输入框的值的解决
Jan 27 Javascript
vue-cli 首屏加载优化问题
Nov 06 Javascript
VUE UPLOAD 通过ACTION返回上传结果操作
Sep 07 Javascript
Vue双向数据绑定(MVVM)的原理
Oct 03 Javascript
使用react+redux实现计数器功能及遇到问题
Jun 02 Javascript
Node.js设置CORS跨域请求中多域名白名单的方法
Mar 28 #Javascript
TypeScript入门-基本数据类型
Mar 28 #Javascript
Restify中接入Socket.io报Error:Can’t set headers的错误解决
Mar 28 #Javascript
Vue.js 60分钟快速入门教程
Mar 28 #Javascript
bootstrap table实现单击单元格可编辑功能
Mar 28 #Javascript
Web前端框架Angular4.0.0 正式版发布
Mar 28 #Javascript
JavaScript实现经纬度转换成地址功能
Mar 28 #Javascript
You might like
回答PHPCHINA上的几个问题:URL映射
2007/02/14 PHP
PHP获取搜索引擎关键字来源的函数(支持百度和谷歌等搜索引擎)
2012/10/03 PHP
解析php入库和出库
2013/06/25 PHP
php中用memcached实现页面防刷新功能
2014/08/19 PHP
php接口隔离原则实例分析
2019/11/11 PHP
js两行代码按指定格式输出日期时间
2011/10/21 Javascript
javascript常用对话框小集
2013/09/13 Javascript
js实现微信分享代码
2020/10/11 Javascript
简单谈谈json跨域
2016/03/13 Javascript
Angularjs---项目搭建图文教程
2016/07/08 Javascript
JavaScript如何一次性展示几万条数据
2017/03/30 Javascript
React.js绑定this的5种方法(小结)
2018/06/05 Javascript
JS实现继承的几种常用方式示例
2019/06/22 Javascript
vue-cli打包后本地运行dist文件中的index.html操作
2020/08/12 Javascript
python实现获取客户机上指定文件并传输到服务器的方法
2015/03/16 Python
在Python中使用M2Crypto模块实现AES加密的教程
2015/04/08 Python
Python中Collections模块的Counter容器类使用教程
2016/05/31 Python
浅谈Python生成器generator之next和send的运行流程(详解)
2017/05/08 Python
Python中用psycopg2模块操作PostgreSQL方法
2017/11/28 Python
python贪婪匹配以及多行匹配的实例讲解
2018/04/19 Python
Python实现输出某区间范围内全部素数的方法
2018/05/02 Python
python3.5安装python3-tk详解
2019/04/26 Python
django基于restframework的CBV封装详解
2019/08/08 Python
python2 对excel表格操作完整示例
2020/02/23 Python
对python中各个response的使用说明
2020/03/28 Python
PHP面试题及答案二
2015/05/23 面试题
智乐游戏测试笔试题
2014/05/21 面试题
小区门卫岗位职责
2013/12/31 职场文书
大学生职业规划论文
2014/01/11 职场文书
大专会计自我鉴定
2014/02/06 职场文书
决心书标准格式
2014/03/11 职场文书
现金出纳岗位职责
2014/03/15 职场文书
学校读书活动总结
2014/06/30 职场文书
2014年学校办公室工作总结
2014/12/19 职场文书
安全生产会议制度
2015/08/06 职场文书
三好学生主要事迹材料
2015/11/03 职场文书