歡迎來到DIVCSS5查找CSS資料與學習DIV CSS布局技術!
您的位置:DIVCSS5首頁 > DIV+CSS基礎 >

功能描述: 

1. 點擊頁面序號跳轉到相應頁面; 

2. 點擊單左/單右,向后/向前跳轉一個頁面; 

3. 點擊雙左/雙右,直接跳轉到最后一頁/第一頁; 

4. 一次顯示當前頁面的前三個與后三個頁面; 

5. 始終顯示最后一個頁面;

HTML:

<!-- 分頁開始 --><div class="u-pages" style="margin-bottom:20px; margin-top:10px;"> <ul> <li v-if="showPre" class="crt"><a v-on:click="jumpFirst(cur)"> << </a></li> <li v-if="showPre" class="crt"><a v-on:click="minus(cur)"> < </a></li> <template v-for="index in indexs" > <li class="{{classRenderer(index)}}"> <a v-on:click="btnClick(index)" >{{index}}</a> </li> </template> <li v-if="showMoreTail" class="crt">..</li> <li class="{{classRenderer(pageNo)}}"><a @click="btnClick(pageNo)">{{pageNo}}</a></li> <li v-if="showTail" class="crt"><a v-on:click="plus(cur)">></a></li> <li v-if="showTail" class="crt"><a v-on:click="jumpTail(cur)">>></a></li> </ul></div><!-- 分頁結束 -->

HTML方法分析: 

1、

<li class="{{classRenderer(index)}}">

classRenderer()方法實現了當點擊頁面索引是,點擊頁面獲得選中效果 

2、

<a v-on:click="btnClick(index)" >{{index}}</a>

btnClick()方法,實現了點擊頁面索引,跳轉到相應頁面 

showPre showTail 

showPre控制跳轉到第一頁與跳轉到前一頁的按鈕的顯示與消除 

showTail控制跳轉到最后一頁與跳轉到后一頁的按鈕的顯示與消除 

cur 

記錄當前頁序號 

jumpFirst(cur) minus(cur) plus(cur) jumpTail(cur) 

實現按鈕跳轉功能

JS:

module.exports = { data: function () { return { cur:1, showTail:true, showMorePre: false, showMoreTail: false, } }, methods:{ jumpFirst:function(data){ var $this = this; data = 1; $this.cur = data; if (data == 1 ) { $this.$set("showPre", false); }else { $this.$set("showPre", true); } $this.$am.ajax({ url:window.$ApiConf.api_order_detail_list, type:'GET', data:{start: 1}, success: function(data){ console.log(data); $this.$set("records", data.record.records); $this.$set("start", data.record.query.start); $this.$set("total", data.record.query.total); $this.$set("limit", data.record.query.limit); } }) $this.$set("showTail", true); return data; }, minus:function(data){ var $this = this; data--; $this.cur = data; $this.$set("showTail", true); if(data == 1){ $this.$set("showPre", false); }else{ $this.$set("showPre", true); } $this.$am.ajax({ url:window.$ApiConf.api_order_detail_list, type:'GET', data:{start: 1 + $this.limit * (data-1) }, success:function(data){ console.log(data); $this.$set("records", data.record.records); $this.$set("start", data.record.query.start); $this.$set("total", data.record.query.total); $this.$set("limit", data.record.query.limit); } }) return data; }, plus: function(data){ var $this = this; data++; $this.cur = data; $this.$set("showPre", true); if (data == $this.pageNo) { $this.$set("showTail", false); }else { $this.$set("showTail", true); } $this.$am.ajax({ url:/* 這里寫上你自己請求數據的路徑 */, type:'GET', data:{start: 1 + $this.limit * (data-1) }, success:function(data){ console.log(data); $this.$set("records", data.record.records); $this.$set("start", data.record.query.start); $this.$set("total", data.record.query.total); $this.$set("limit", data.record.query.limit); } }) return data; }, classRenderer:function(index){ var $this = this; var cur = $this.cur; if(index != cur){ return 'crt'; } return ''; }, btnClick:function(data){ var $this = this; if(data == 1){ $this.$set("showPre", false); }else{ $this.$set("showPre", true); } if (data == $this.pageNo) { $this.$set("showTail", false); }else { $this.$set("showTail", true); } if (data != $this.cur) { $this.cur = data; $this.$am.ajax({ url:window.$ApiConf.api_order_detail_list, type:'GET', data:{start: 1 + $this.limit * (data-1) }, success:function(data){ console.log(data); $this.$set("records", data.record.records); $this.$set("start", data.record.query.start); $this.$set("total", data.record.query.total); $this.$set("limit", data.record.query.limit); } }) } }, jumpTail:function(data){ var $this = this; data = $this.pageNo; $this.cur = data; if (data == $this.pageNo) { $this.$set("showTail", false); }else { $this.$set("showTail", true); } $this.$am.ajax({ url:window.$ApiConf.api_order_detail_list, type:'GET', data:{start: 1 + $this.limit * (data-1) }, success:function(data){ console.log(data); $this.$set("records", data.record.records); $this.$set("start", data.record.query.start); $this.$set("total", data.record.query.total); $this.$set("limit", data.record.query.limit); } }) $this.$set("showPre", true); return data; }, computed: { //*********************分頁開始******************************// indexs: function(){ var $this = this; var ar = []; if ($this.cur > 3) { ar.push($this.cur - 3); ar.push($this.cur - 2); ar.push($this.cur - 1); }else { for (var i = 1; i < $this.cur; i++) { ar.push(i); } } if ($this.cur != $this.pageNo) { ar.push($this.cur); } if ( $this.cur < ( $this.pageNo - 3 ) ) { ar.push($this.cur + 1); ar.push($this.cur + 2); ar.push($this.cur + 3); if ( $this.cur < ( $this.pageNo - 4 ) ) { $this.$set("showMoreTail", true); } }else { $this.$set("showMoreTail", false); for (var i = ($this.cur + 1); i < $this.pageNo; i++) { ar.push(i); } } return ar; } //*********************分頁結束******************************// }}

JS功能分析:indexs用于記錄一共有多少頁面

如需轉載,請注明文章出處和來源網址:http://www.5015168.live/rumen/r50568.shtml

如對文章有任何疑問請提交到DIV CSS論壇,或有任何網頁制作CSS問題立即到CSS論壇發貼求解 或 直接DIVCSS5網頁頂部搜索遇到DIVCSS疑問。
CSS教程文章修訂日期:2018-08-14 17:37 原創:DIVCSS5
本文www.5015168.live DIVCSS5版權所有。

民生银行股票行情