PHP+jQuery+Ajax實現分頁效果 jPaginate外掛程式的應用_php執行個體

來源:互聯網
上載者:User

jPaginate是基於jQuery的動感滾動分頁外掛程式,它的表現形式是像分頁的按鈕一樣,非常有意思的是這些按鈕卻可以滾動,可以通過單擊或滑鼠滑向點兩側的小箭頭來控制按鈕的前後滾動。

 

調用jPaginate外掛程式的方法很簡單:

$(elementID).paginate() 

屬性設定
可喜的是,jPaginate提供了很多屬性配置,您可以輕易的定製想要的分頁效果。
設定方法如:

$(elementID).paginate({     count:80,     start:1,     ... }) 

count: 數字,總記錄數。
start: 數字,開始顯示的頁數,如:3表示從第3頁開始。
display: 數字,分頁條顯示的頁數,如:5表示一次顯示5個頁碼數。
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'時,當滑鼠滑嚮導航箭頭時,頁碼隨之滾動;設定為'slide'時,按一下滑鼠一次導航箭頭頁碼滾動一次。
onChange: 當單擊頁碼時,回呼函數.
執行個體應用:PHP+jQuery實現Ajax分頁效果
首先準備index.php,該頁面用來分頁展示一個部落格文章列表。
1、引用JS:

<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> 

注意,關於外掛程式的屬性設定,上文已詳細介紹,屬性count通過PHP計算出總頁數$page,該參數由article.php得出。還要說明的是屬性onChange:當點擊頁碼時,調用函數,該函數實現了非同步提交頁碼參數給article.php來處理,article.php通過讀取資料庫裡的表書籍,並把得到的文章列表結果而返回頁面,這就是Ajax。當然我這裡只是做簡單的示範,如果需要更多非同步效果,可以參照jQuery使用文檔。
2、引用CSS:
jPaginate官方提供了導航條樣式,你也可以自己寫個非常酷的樣式。

<link rel="stylesheet" type="text/css" href="style.css" /> 

3、index.php初始頁面。
必須要顯示一個初始的文章列表,代碼如下

<div class="demo">   <h4>Demo 3: Php+jQuery實現AJAX 分頁效果</h4>   <div id="pagetxt">       </div>   <div id="demo"></div> </div> 

在ID為pagetxt的DIV內加入PHP代碼:

$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提交過來的頁碼,查詢資料庫,並將輸出結果。代碼如下:

include_once("common.php"); //串連資料庫專用檔案  $id=$_GET['id']; //擷取頁碼 $result = $db->select("article", "id", "cata=1"); $total = $db->db_num_rows($result); //總記錄數  $pagesize=5; //每頁顯示數 $page=ceil($total/$pagesize); //總頁數 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實現Ajax分頁效果中jPaginate外掛程式的應用,希望對大家的學習有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.