1. 程式人生 > >html+vue.js 實現分頁可相容IE

html+vue.js 實現分頁可相容IE

#### 當功能比較簡單,在單一html中使用vue.js分頁展示資料,並未安裝腳手架,或使用相關UI框架,此時需要手寫一個分頁器,不失為最合理最便捷的解決方案, 先看一下實現效果: ![](https://img2020.cnblogs.com/blog/1238759/202011/1238759-20201106185640639-1263371983.gif) #### 上程式碼:
1.簡單搞一搞 CSS,此處程式碼有摺疊

	[v-cloak] {
		display: none;
	}
	#app {
		text-align: center;
		padding-top: 300px;
                height:500px;
	}
	.pageContainer {
		width: 800px;
		margin: 100px auto;
		text-align: center;
		font-size: 14px;
		color: #A3A3A3;
	}
	.pageContainer ul.pagesInner {
		height: 30px;
		line-height: 30px;
		display: inline-block;
                padding: 0;
	}
	.pageContainer ul.pagesInner li {
		width: 30px;
		height: 30px;
		display: inline-block;
		border: 1px solid #E5E5E5;
		margin: 0 5px;
                list-style: none;
	}
	.pageContainer ul.pagesInner li.actived {
		background: #FF6200;
		color: #ffffff;
	}
	.pageContainer .page-size-box {
		position: relative;
		display: inline-block;
		width: 70px;
		border: 1px solid #E5E5E5;
		height: 30px; 
		line-height: 30px;
	}
	.pageContainer ul.size-option {
		display: inline-block;
		border: 1px solid #E5E5E5;
		position: absolute;
		margin: 0;
		padding: 0;
		left: 0;
		top: -120px;
		background: #ffffff;
	}
	.pageContainer ul.size-option li{
		list-style: none;
		width: 70px;
	}
	.pageContainer ul.size-option li:hover{
		color: #FF6200;
	}
	.pageContainer form {
		display: inline-block;
	}
	.pageContainer form input,
	.pageContainer button {
		outline: none;
		padding: 0;
		width: 46px;
		height: 30px;
		background: #ffffff;
		border: 1px solid #E5E5E5;
		color: #A3A3A3;
	}
2.簡單搞一搞 HTML ``` 第{{pageIndex}}頁, 每頁顯示{{pageSize}}條 1" class="pageContainer"> 共{{dataListLength}}條
  • <
  • {{item}}
  • >
{{pageSize}}條/頁
  • {{item}}條/頁
跳至   頁  button @click="handleGoToPage">
確定 ``` ## 3.搞事情啦 ~~~~ #### 首先分析一下分頁功能的實現思路: - 首頁和尾頁始終顯示, - 通過資料總條數dataListLength及每頁顯示條數pageSize,計算出總頁數pageTotalNum - 監聽watch一下,每頁顯示條數pageSize,重置當前頁碼pageIndex=1 - 我設計的分頁每次最多顯示5個頁碼(大家可根據需求自行調整),剩餘部分 ... 代替,並設定不可點選, - 根據不同的總頁數和當前頁碼的切換,頁籤展示形態有所不同,展示形態如下圖對應序號展示 > 1. 總頁數 <= 1,不顯示分頁器 > 2. 總頁數 <= 5 && 總頁數 > 1,顯示全部頁碼 > 3. 總頁數 > 5 && 當前頁面 <= 3 , 倒數第二個頁碼為...,頁碼從**左**往**右**計算 > 4. 總頁數 > 5 && 當前頁面 > 3 && 當前頁 < 總頁數 - 3 , 正倒數第二個頁碼都為..., 頁碼以當前頁碼計算,**±1** > 5. 總頁數 > 5 && 當前頁面 > 3 && 當前頁 > 總頁數 - 3 , 正數第二個頁碼為..., 頁碼從**右**往**左**計算 ![](https://img2020.cnblogs.com/blog/1238759/202011/1238759-20201106164311694-1811938151.jpg) ``` ```