jPaginate是基于jQuery的動感滾動分頁插件,它的表現(xiàn)形式是像分頁的按鈕一樣,非常有意思的是這些按鈕卻可以滾動,可以通過單擊或鼠標滑向點兩側(cè)的小箭頭來控制按鈕的前后滾動。
調(diào)用jPaginate插件的方法很簡單:
1
|
$(elementID).paginate() |
屬性設置
可喜的是,jPaginate提供了很多屬性配置,您可以輕易的定制想要的分頁效果。
設置方法如:
1
2
3
4
|
$(elementID).paginate({ count:80, start:1, ... }) |
count: 數(shù)字,總記錄數(shù)。
start: 數(shù)字,開始顯示的頁數(shù),如:3表示從第3頁開始。
display: 數(shù)字,分頁條顯示的頁數(shù),如:5表示一次顯示5個頁碼數(shù)。
border: 是否顯示頁碼的邊框。(true/false)
border_color: 設置邊框的顏色,如"#d3d3d3"。
text_color: 設置頁碼的顏色,如"#68ba64"。
background_color: 設置頁碼的背景色,如"#f7f7f7"。
border_hover_color: 設置鼠標滑向頁碼時頁碼邊框的顏色。
text_hover_color: 設置鼠標滑向頁碼時頁碼的顏色。
background_hover_color: 設置鼠標滑向頁碼時頁碼背景的顏色。
images: 是否顯示頁碼導航箭頭(方向箭頭)(true/false)
mouse: 設置為'press'時,當鼠標滑向?qū)Ш郊^時,頁碼隨之滾動;設置為'slide'時,鼠標單擊一次導航箭頭頁碼滾動一次。
onChange: 當單擊頁碼時,回調(diào)函數(shù).
實例應用:PHP+jQuery實現(xiàn)Ajax分頁效果
首先準備index.php,該頁面用來分頁展示一個博客文章列表。
1、引用JS:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
<script type= "text/javascript" src= "js/jquery.js" ></script> <script type= "text/javascript" src= "js/jquery.paginate.js" ></script> <script type= "text/javascript" > $( function (){ $( "#demo" ).paginate({ count : <?php echo $page;?>, start : 1, display : 5, border : true , border_color : '#BEF8B8' , text_color : '#79B5E3' , background_color : '#E3F2E1' , border_hover_color : '#68BA64' , text_hover_color : '#2573AF' , background_hover_color : '#CAE6C6' , images : false , mouse : 'press' , onChange : function (page){ $( "#pagetxt" ).load( "article.php?id=" +page); } }); }); </script> |
注意,關(guān)于插件的屬性設置,上文已詳細介紹,屬性count通過PHP計算出總頁數(shù)$page,該參數(shù)由article.php得出。還要說明的是屬性onChange:當點擊頁碼時,調(diào)用函數(shù),該函數(shù)實現(xiàn)了異步提交頁碼參數(shù)給article.php來處理,article.php通過讀取數(shù)據(jù)庫里的表書籍,并把得到的文章列表結(jié)果而返回頁面,這就是Ajax。當然我這里只是做簡單的演示,如果需要更多異步效果,可以參照jQuery使用文檔。
2、引用CSS:
jPaginate官方提供了導航條樣式,你也可以自己寫個非常酷的樣式。
1
|
<link rel= "stylesheet" type= "text/css" href= "style.css" /> |
3、index.php初始頁面。
必須要顯示一個初始的文章列表,代碼如下
1
2
3
4
5
6
7
|
<div class = "demo" > <h4>Demo 3: Php+jQuery實現(xiàn)AJAX 分頁效果</h4> <div id= "pagetxt" > </div> <div id= "demo" ></div> </div> |
在ID為pagetxt的DIV內(nèi)加入PHP代碼:
1
2
3
4
5
|
$query = $db ->select( "article" , "id,title,pubdate" , "cata=1 order by id desc limit 0,5" ); while ( $row = $db ->fetch_array( $query )){ $pubdate = date ( "Y-m-d" , $row [pubdate]); echo "<p><span>$pubdate</span><a href='view-blog-" . $row [id].".html' target= '_blank' > ".$row[title]." </a></p>"; |
4、article.php代碼。
該代碼用來獲取index.php提交過來的頁碼,查詢數(shù)據(jù)庫,并將輸出結(jié)果。代碼如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
include_once ( "common.php" ); //連接數(shù)據(jù)庫專用文件 $id = $_GET [ 'id' ]; //獲取頁碼 $result = $db ->select( "article" , "id" , "cata=1" ); $total = $db ->db_num_rows( $result ); //總記錄數(shù) $pagesize =5; //每頁顯示數(shù) $page = ceil ( $total / $pagesize ); //總頁數(shù) if (isset( $id )){ $startPage =( $id -1)* $pagesize ; $query = $db ->select( "article" , "id,title,pubdate" ,"cata=1 order by id desc limit $startPage , $pagesize "); while ( $row = $db ->fetch_array( $query )){ $pubdate = date ( "Y-m-d" , $row [pubdate]); echo "<p><span>$pubdate</span><a href='view-blog-" . $row [id].".html' target= '_blank' > ".$row[title]." </a></p>"; //輸出文章列表 } } |
以上介紹了PHP+jQuery實現(xiàn)Ajax分頁效果中jPaginate插件的應用,希望對大家的學習有所幫助。