Bootstrap php制作動(dòng)態(tài)分頁(yè)標(biāo)簽
學(xué)習(xí)了下bootstrap,剛好在用分頁(yè),就自己寫了一個(gè)分頁(yè),然后結(jié)合bootstrap樣式展現(xiàn)。
bootstrap的分頁(yè)格式:
<ul class="pagination"> <li><a href="#">«</a></li> <li class="active"><a href="#">1</a></li> <li><a href="#">2</a></li> <li><a href="#">3</a></li> <li><a href="#">4</a></li> <li><a href="#">5</a></li> <li><a href="#">»</a></li> </ul>
PHP動(dòng)態(tài)分頁(yè)過程;
/**
* @param $maxpage 總頁(yè)數(shù)
* @param $page 當(dāng)前頁(yè)
* @param string $para 翻頁(yè)參數(shù)(不需要寫$page),$para參數(shù)就應(yīng)該設(shè)為'&id=1'
* @return string 返回的輸出分頁(yè)html內(nèi)容
*/
function multipage($maxpage, $page, $para = '') {
$multipage = ''; //輸出的分頁(yè)內(nèi)容
$listnum = 5; //同時(shí)顯示的最多可點(diǎn)擊頁(yè)面
if ($maxpage < 2) {
return '';
}else{
$offset = 2;
if ($maxpage <= $listnum) {
$from = 1;
$to = $maxpage;
} else {
$from = $page - $offset; //起始頁(yè)
$to = $from + $listnum - 1; //終止頁(yè)
if($from < 1) {
$to = $page + 1 - $from;
$from = 1;
if($to - $from < $listnum) {
$to = $listnum;
}
} elseif($to > $maxpage) {
$from = $maxpage - $listnum + 1;
$to = $maxpage;
}
}
$multipage .= ($page - $offset > 1 && $maxpage >= $page ? '<li><a href="?page=1'.$para.'" >1...</a></li>' : '').
($page > 1 ? '<li><a href="?page='.($page - 1).$para.'" >«</a></li>' : '');
for($i = $from; $i <= $to; $i++) {
$multipage .= $i == $page ? '<li class="active"><a href="?page='.$i.$para.'" >'.$i.'</a></li>' :
'<li><a href="?page='.$i.$para.'" >'.$i.'</a></li>';
}
$multipage .= ($page < $maxpage ? '<li><a href="?page='.($page + 1).$para.'" >»</a></li>' : '').
($to < $maxpage ? '<li><a href="?page='.$maxpage.$para.'" class="last" >...'.$maxpage.'</a></li>' : '');
$multipage .= ' <li><a href="#" ><input type="text" size="3" onkeydown="if(event.keyCode==13)
{self.window.location=\'?page=\'+this.value+\''.$para.'\'; return false;}" ></a></li>';
$multipage = $multipage ? '<ul class="pagination">'.$multipage.'</ul>' : '';
}
return $multipage;
}
輸出分頁(yè)結(jié)果,如$multipage = multipage(20,1);便可得到如下所示的分頁(yè)標(biāo)簽了:

有個(gè)不完善的地方就是最后的頁(yè)碼自選擇框的大小與bootstrap的分頁(yè)框大小不一致,有點(diǎn)影響美觀了。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
js實(shí)現(xiàn)簡(jiǎn)單計(jì)算器
一個(gè)簡(jiǎn)潔的網(wǎng)頁(yè)JS計(jì)算器,附詳細(xì)代碼釋義。通過下邊的效果演示就可以看到,這是一個(gè)挺小的js網(wǎng)頁(yè)計(jì)算器,界面美化的我想還是不錯(cuò)的,畢竟在沒有使用任何圖片修飾的情況下,很好看,而且功能挺實(shí)用,可以完成基本的數(shù)學(xué)算數(shù)運(yùn)算。2015-11-11
js實(shí)現(xiàn)數(shù)據(jù)雙向綁定(訪問器監(jiān)聽)
這篇文章主要為大家詳細(xì)介紹了采用訪問器監(jiān)聽的方式實(shí)現(xiàn)簡(jiǎn)單數(shù)據(jù)雙向綁定,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09
創(chuàng)建基于Bootstrap的下拉菜單的DropDownList的JQuery插件
這篇文章主要介紹了創(chuàng)建基于Bootstrap的下拉菜單的DropDownList的JQuery插件 的相關(guān)資料,需要的朋友可以參考下2016-06-06
Array, Array Constructor, for in loop, typeof, instanceOf
雖然在 JavaScript 中數(shù)組是是對(duì)象,但是沒有好的理由去使用 `for in` 循環(huán) 遍歷數(shù)組。相反,有一些好的理由不去使用 for in 遍歷數(shù)組。2011-09-09
JavaScript中for..in循環(huán)陷阱介紹
for...in循環(huán)中的循環(huán)計(jì)數(shù)器是字符串,而不是數(shù)字它包含當(dāng)前屬性的名稱或當(dāng)前數(shù)組元素的索引,下面有個(gè)不錯(cuò)的示例大家可以參考下2013-11-11
js實(shí)現(xiàn)簡(jiǎn)易的單數(shù)字隨機(jī)抽獎(jiǎng)(0-9)
這篇文章主要介紹了js實(shí)現(xiàn)簡(jiǎn)易的單數(shù)字0-9隨機(jī)抽獎(jiǎng),可以控制抽取隨機(jī)數(shù)開始與停止,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2015-08-08

