使用jquery简单的制作一个分页效果

HTML

 1 <!DOCTYPE html>
 2 <html>
 3     <head>
 4         <meta charset="utf-8" />
 5         <meta name="viewport" content="width=device-width, initial-scale=1">
 6         <title>分页</title>
 7     </head>
 8     <link rel="stylesheet" type="text/css" href="page.css" />
 9     
10     <script src="http://libs.baidu.com/jquery/2.0.0/jquery.js"></script>
11     <body>
12         <div id="containet">
13             <table border="" cellspacing="" cellpadding="" id="pageMain">
14                 <!-- <tr><td>这是内容标题 第1</td></tr>
15                 <tr><td>这是内容标题 第2</td></tr>
16                 <tr><td>这是内容标题 第3</td></tr>
17                 <tr><td>这是内容标题 第4</td></tr>
18                 <tr><td>这是内容标题 第5</td></tr>
19                 <tr><td>这是内容标题 第6</td></tr>
20                 <tr><td>这是内容标题 第7</td></tr>
21                 <tr><td>这是内容标题 第8</td></tr>
22                 <tr><td>这是内容标题 第9</td></tr>
23                 <tr><td>这是内容标题 第10</td></tr>
24                 <tr><td>这是内容标题 第11</td></tr>
25                 <tr><td>这是内容标题 第12</td></tr>
26                 <tr><td>这是内容标题 第13</td></tr>
27                 <tr><td>这是内容标题 第14</td></tr>
28                 <tr><td>这是内容标题 第15</td></tr>
29                 <tr><td>这是内容标题 第16</td></tr>
30                 <tr><td>这是内容标题 第17</td></tr> -->
31             </table>
32             <div id="pageBox">
33                 <span id="prev">上一页</span>
34                 <ul id="pageNav"></ul>
35                 <span id="next">下一页</span>
36             </div>
37         </div>
38     </body>
39     <script src="page.js"></script>
40 </html>

JS

  1 $(function () {
  2     var data=[
  3         {name:"我是一个莫得感情滴程序员 第01"},
  4         {name:"我是一个莫得感情滴程序员 第02"},
  5         {name:"我是一个莫得感情滴程序员 第03"},
  6         {name:"我是一个莫得感情滴程序员 第04"},
  7         {name:"我是一个莫得感情滴程序员 第05"},
  8         {name:"我是一个莫得感情滴程序员 第06"},
  9         {name:"我是一个莫得感情滴程序员 第07"},
 10         {name:"我是一个莫得感情滴程序员 第08"},
 11         {name:"我是一个莫得感情滴程序员 第09"},
 12         {name:"我是一个莫得感情滴程序员 第10"},
 13         {name:"我是一个莫得感情滴程序员 第11"},
 14         {name:"我是一个莫得感情滴程序员 第12"},
 15         {name:"我是一个莫得感情滴程序员 第13"},
 16         {name:"我是一个莫得感情滴程序员 第14"},
 17         {name:"我是一个莫得感情滴程序员 第15"},
 18     ];
 19     var Numlength=data.length;
 20     console.log(Numlength);
 21     // var html='<tr>'+'<td>'+data[i].name+'</td>'+'</tr>';
 22     console.log(html);
 23         for(i=0;i<Numlength;i++){
 24                 var html='<tr>'+'<td>'+data[i].name+'</td>'+'</tr>';            
 25                             $('#pageMain').append(html);
 26         }
 27 
 28         tabPage({
 29             pageMain: '#pageMain',
 30             pageNav: '#pageNav',
 31             pagePrev: '#prev',
 32             pageNext: '#next',
 33             curNum: 7, /*每页显示的条数*/
 34             activeClass: 'active', /*高亮显示的class*/
 35             ini: 0/*初始化显示的页面*/
 36         });
 37         function tabPage(tabPage) {
 38             var pageMain = $(tabPage.pageMain);
 39             /*获取内容列表*/
 40             var pageNav = $(tabPage.pageNav);
 41             /*获取分页*/
 42             var pagePrev = $(tabPage.pagePrev);
 43             /*上一页*/
 44             var pageNext = $(tabPage.pageNext);
 45             /*下一页*/
 46  
 47  
 48             var curNum = tabPage.curNum;
 49             /*每页显示数*/
 50             var len = Math.ceil(pageMain.find("tr").length / curNum);
 51             /*计算总页数*/
 52             console.log(len);
 53             var pageList = '';
 54             /*生成页码*/
 55             var iNum = 0;
 56             /*当前的索引值*/
 57  
 58             for (var i = 0; i < len; i++) {
 59                 pageList += '<a href="javascript:;">' + (i + 1) + '</a>';
 60             }
 61             pageNav.html(pageList);
 62             /*头一页加高亮显示*/
 63             pageNav.find("a:first").addClass(tabPage.activeClass);
 64  
 65             /*******标签页的点击事件*******/
 66                 pageNav.find("a").each(function(){
 67                     $(this).click(function () {
 68                         pageNav.find("a").removeClass(tabPage.activeClass);
 69                         $(this).addClass(tabPage.activeClass);
 70                         iNum = $(this).index();
 71                         $(pageMain).find("tr").hide();
 72                         for (var i = ($(this).html() - 1) * curNum; i < ($(this).html()) * curNum; i++) {
 73                             $(pageMain).find("tr").eq(i).show()
 74                         }
 75  
 76                     });
 77             })
 78  
 79  
 80             $(pageMain).find("tr").hide();
 81             /************首页的显示*********/
 82             for (var i = 0; i < curNum; i++) {
 83                 $(pageMain).find("tr").eq(i).show()
 84             }
 85  
 86  
 87             /*下一页*/
 88             pageNext.click(function () {
 89                 $(pageMain).find("tr").hide();
 90                 if (iNum == len - 1) {
 91                     alert('已经是最后一页');
 92                     for (var i = (len - 1) * curNum; i < len * curNum; i++) {
 93                         $(pageMain).find("tr").eq(i).show()
 94                     }
 95                     return false;
 96                 } else {
 97                     pageNav.find("a").removeClass(tabPage.activeClass);
 98                     iNum++;
 99                     pageNav.find("a").eq(iNum).addClass(tabPage.activeClass);
100 //                    ini(iNum);
101                 }
102                 for (var i = iNum * curNum; i < (iNum + 1) * curNum; i++) {
103                     $(pageMain).find("tr").eq(i).show()
104                 }
105             });
106             /*上一页*/
107             pagePrev.click(function () {
108                 $(pageMain).find("tr").hide();
109                 if (iNum == 0) {
110                     alert('当前是第一页');
111                     for (var i = 0; i < curNum; i++) {
112                         $(pageMain).find("tr").eq(i).show()
113                     }
114                     return false;
115                 } else {
116                     pageNav.find("a").removeClass(tabPage.activeClass);
117                     iNum--;
118                     pageNav.find("a").eq(iNum).addClass(tabPage.activeClass);
119                 }
120                 for (var i = iNum * curNum; i < (iNum + 1) * curNum; i++) {
121                     $(pageMain).find("tr").eq(i).show()
122                 }
123             })
124  
125         }
126  
127  
128     })

CSS

 1 * {
 2             margin: 0;
 3             padding: 0;
 4         }
 5  
 6         #containet {
 7             display: inline-block;
 8             border: 1px solid #ed0181;
 9             padding: 19px;
10             margin: auto;
11         }
12  
13         #pageMain td {
14             list-style: none;
15             line-height: 22px;
16         }
17  
18         #pageBox {
19             padding: 10px 0 0 0;
20         }
21  
22         #pageBox span {
23             display: inline-block;
24             width: 60px;
25             height: 24px;
26             line-height: 24px;
27             text-align: center;
28             color: #fff;
29             background: #08a586;
30  
31         }
32  
33         #pageNav {
34             display: inline-block;
35         }
36  
37         #pageNav a {
38             display: inline-block;
39             width: 24px;
40             height: 24px;
41             line-height: 24px;
42             text-align: center;
43             color: #3a87ad;
44             text-decoration: none;
45         }
46  
47         #pageNav a.active, #pageNav a:hover {
48             background: #3a87ad;
49             color: #EFEFEF;
50         }
51  
52         #prev:hover {
53             cursor: pointer;
54         }
55  
56         #next:hover {
57             cursor: pointer;
58         }
原文地址:https://www.cnblogs.com/liazhimao/p/14062165.html