自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

jQuery+PHP實(shí)戰(zhàn)實(shí)現(xiàn)瀏覽更多內(nèi)容

開發(fā) 前端
我們在一些微博網(wǎng)站上可以碰到這樣的應(yīng)用,微博內(nèi)容列表沒有使用分頁條,而是一次加載一定數(shù)量的記錄顯示在列表頁,當(dāng)用戶瀏覽到列表頁底部時(shí),可以通過單擊“查看更多”來加載更多記錄。本文我將結(jié)合jQuery和PHP給大家講述如何實(shí)現(xiàn)這種應(yīng)用。

基本原理:頁面載入時(shí),jQuery向后臺請求數(shù)據(jù),PHP通過查詢數(shù)據(jù)庫將***的幾條記錄顯示在列表頁,在列表頁的底部有個(gè)“更多”鏈接,通過觸發(fā)該鏈接,向服務(wù)端發(fā)送Ajax請求,后臺PHP程序得到請求參數(shù),并作出相應(yīng),獲取數(shù)據(jù)庫相應(yīng)的記錄并以JSON的形式返回給前臺頁面,前臺頁面jQuery解析JSON數(shù)據(jù),并將數(shù)據(jù)追加到列表頁。其實(shí)就是Ajax分頁效果。

XHTML

首先要引入jquery庫和jquery.more.js插件,jquery.more.js已經(jīng)將許多功能都封裝好了,并提供了參數(shù)配置的功能。

  1. <script type="text/javascript" src="jquery.js"></script>   
  2. <script type="text/javascript" src="jquery.more.js"></script>  

xhtml結(jié)構(gòu)如下:

  1. <div id="more">   
  2.      <div class="single_item">   
  3.            <div class="element_head">   
  4.                <div class="date"></div>   
  5.                <div class="author"></div>   
  6.             </div>   
  7.             <div class="content"></div>   
  8.      </div>   
  9.      <a href="javascript:;" class="get_more">::點(diǎn)擊加載更多內(nèi)容::</a>   
  10. </div>   

值得一提的是,樣式single_item,get_more是和jquery.more.js插件關(guān)聯(lián)的,你也可以取另外的class名字,但是在配置的時(shí)候一定要將對應(yīng)的class寫上。

CSS

  1. #more{margin:10px auto;width560px;  border1px solid #999;}                  
  2. .single_item{padding20pxborder-bottom1px dotted #d3d3d3;}   
  3. .author{positionabsolute; left: 0pxfont-weight:boldcolor:#39f}   
  4. .date{positionabsolute; right: 0pxcolor:#999}   
  5. .content{line-height:20px; word-break: break-all;}   
  6. .element_head{width100%positionrelativeheight20px;}   
  7. .get_more{margin:10pxtext-align:center}   
  8. .more_loader_spinner{width:20pxheight:20pxmargin:10px autobackgroundurl(loader.gif)   
  9.  no-repeat;}  

以上CSS是本例中定制的,當(dāng)然,大家可以在實(shí)際項(xiàng)目中定制不同的樣式。注意,more_loader_spinner是定義加載動畫圖片的。

jQuery

  1. $(function(){   
  2.     $('#more').more({'address''data.php'})   
  3. });  

使用很簡單,配置了后臺地址:data.php,來看data.php是怎么處理數(shù)據(jù)的。

PHPdata.php鏈接數(shù)據(jù)庫,本例使用本站文章PHP+Mysql+jQuery實(shí)現(xiàn)發(fā)布微博程序--PHP篇相同的數(shù)據(jù)表。

  1. require_once('connect.php');   
  2.    
  3. $last = $_POST['last'];   
  4. $amount = $_POST['amount'];   
  5.    
  6. $user = array('demo1','demo2','demo3','demo3','demo4');   
  7. $query=mysql_query("select * from say order by id desc limit $last,$amount");   
  8. while ($row=mysql_fetch_array($query)) {   
  9.     $sayList[] = array(   
  10.         'content'=>$row['content'],   
  11.         'author'=>$user[$row['userid']],   
  12.         'date'=>date('m-d H:i',$row['addtime'])   
  13.       );   
  14. }   
  15. echo json_encode($sayList);  

data.php接收前臺頁面提交過來的兩個(gè)參數(shù),$_POST['last']即開始記錄數(shù),$_POST['amount']即單次顯示記錄數(shù),看SQL語句就明白,其實(shí)就是分頁中用到的語句。

然后將查詢的結(jié)果以JSON格式輸出,PHP的任務(wù)就完成了。

***來看下jquery.more.js的參數(shù)配置。

  1. 'amount'      :   '10',           //每次顯示記錄數(shù)   
  2. 'address'     :   'comments.php', //請求后臺的地址   
  3. 'format'      :   'json',         //數(shù)據(jù)傳輸格式   
  4. 'template'    :   '.single_item', //html記錄DIV的class屬性   
  5. 'trigger'     :   '.get_more',    //觸發(fā)加載更多記錄的class屬性   
  6. 'scroll'      :   'false',        //是否支持滾動觸發(fā)加載   
  7. 'offset'      :   '100',          //滾動觸發(fā)加載時(shí)的偏移量  

源文件下載

原文鏈接:http://www.helloweba.com/view-blog-130.html

【編輯推薦】

  1. jQuery實(shí)戰(zhàn)開發(fā)表單驗(yàn)證與自動完成提示插件
  2. 從零開始學(xué)習(xí)jQuery之必知的工具函數(shù)
  3. 從零開始學(xué)習(xí)jQuery之jQuery實(shí)施方案
  4. jQuery給力插件大閱兵
  5. jQuery從入門到精通
責(zé)任編輯:陳貽新 來源: helloweba.com
相關(guān)推薦

2010-12-28 13:44:12

PHPXMLjQuery

2012-06-12 16:45:57

PHP

2010-10-27 10:02:36

PHP

2010-10-25 10:07:48

jQuery

2011-03-23 10:55:55

PHPMySQLjQuery

2015-07-31 11:36:14

傾斜手機(jī)查看圖片

2011-05-18 13:43:52

jQueryAjaxPHP

2011-05-18 13:28:46

jQueryPHPAJAX

2010-03-05 17:24:04

Android智能系統(tǒng)

2013-12-09 09:57:37

2020-10-14 11:30:10

PHP網(wǎng)絡(luò)安全加密

2012-02-08 17:01:36

2016-09-29 08:36:38

2013-07-31 11:11:47

Windows 8.1

2011-04-26 10:19:46

BlackBerry

2017-10-11 18:17:06

大數(shù)據(jù)數(shù)據(jù)可視化前后端

2011-07-06 16:26:32

jQuery Mobi

2009-11-16 10:49:43

PHP上傳文件代碼

2011-07-20 10:56:53

jQuery Mobi手機(jī)新聞瀏覽器

2010-12-16 09:34:48

差異備份
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號