懶加載與ajax的組合應(yīng)用

預(yù)覽:
https://jirengu-inc.github.io/jrg-renwu8/homework/%E5%BC%A0%E8%BD%A9/renwu29-3/renwu29-3.html
源碼:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>renwu29-3</title>
    <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.js"></script>
</head>
<style>
    .line{
        height: 500px;
        line-height: 500px;
        border: 1px solid grey;
        border-radius: 5px;
        padding: 10px;
        margin: 5px;
    }
    .button{
        padding: 5px;
        width: 80px;
        border-radius: 5px;
        margin: 5px;
        outline-style: none;
    }
    .hover{
        background-color: #6fc;
    }
</style>
<body>
    <div class="line">1</div>
    <div class="line">2</div>
    <button class="button">click</button>
    <script>

$('body').on('mouseenter', 'div', function(){
    $(this).addClass('hover');
})
$('body').on('mouseleave', 'div', function(){
    $(this).removeClass('hover');
})
        /*
        接口
        1.url;
        2.get,post
        3.輸入:
        {
            start:2晒旅,
            length:6
        }
        4.輸出:
        {
            status:1 --OK
            data:[3,4,5,6,7,8]

            status:0 --ERROR
        }
        */
var getdata=(function(){
            function data(){
                $.ajax(
                    {
                        url:'renwu29-3.php',
                        dataType:'json',
                        type:'get',
                        data:{
                            start:$('.line').length,
                            len:6
                        },
                        success:function(json){
                            onSuccess(json);
                        },
                        error:function(){
                            onError();
                        },
                    }
            );
            function onSuccess(json){
                if(json.status==1){
                    append(json.data);
                }
                else{
                    alert('獲取失敗');
                }
            };
            function onError(){
                alert('鏈接失敗');
            };

            function append(arr){
                for(var i=0;i<arr.length;i++){
                    $('.line:last').after('<div class="line">'+arr[i]+'</div>');
                }
            };
        }
        return {
            data:data
        }

})()


var zhangxuan=(function(){
  

  function showimg(p){
    getdata.data();
  }
  function isimg(node){
    node.each(function(){
      var $node=$(this),
          $dscrollTop=$(document).scrollTop(),
          $wwidth=$(window).height(),
          $picoffsetTop=$node.offset().top;
      //原本作為優(yōu)化已加載圖片不執(zhí)行怨咪,但對(duì)于以DOM為參照物的方法不需要
      // if(!!$node.data('isload')){            
      //     return
      //   }
      // else{
          if(($dscrollTop+$wwidth)>$picoffsetTop){
            showimg($node);
          }

    })
  }
  function bind(node){
    var clock;
    $(window).on('scroll', function(){
      if(clock){
        clearTimeout(clock);
      }
      clock=setTimeout(function(){
            //優(yōu)化滾輪停止時(shí)才執(zhí)行
        isimg(node);
      }, 500)
    })

  }
  return{
    bind:bind
  }
})()
zhangxuan.bind($('.button'));




    </script>
</body>
</html>

php

<?php
    // 后端 php 測(cè)試接口文件
    $start = $_GET['start']; //2
    $len = $_GET['len'];  //6 
    $items = array();
 
    for($i = 1; $i < $len; $i++){
        array_push($items, ($start+$i));
    }
    $ret = array('status'=>1, 'data'=>$items);

    //{status: 1, data: ['內(nèi)容1','內(nèi)容2','內(nèi)容3']}
    sleep(0.5);
    echo json_encode($ret);
?>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市球化,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,639評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件尝艘,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡姿染,警方通過查閱死者的電腦和手機(jī)背亥,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來悬赏,“玉大人狡汉,你說我怎么就攤上這事∠衔耍” “怎么了轴猎?”我有些...
    開封第一講書人閱讀 157,221評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)进萄。 經(jīng)常有香客問我捻脖,道長(zhǎng),這世上最難降的妖魔是什么中鼠? 我笑而不...
    開封第一講書人閱讀 56,474評(píng)論 1 283
  • 正文 為了忘掉前任可婶,我火速辦了婚禮,結(jié)果婚禮上援雇,老公的妹妹穿的比我還像新娘矛渴。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,570評(píng)論 6 386
  • 文/花漫 我一把揭開白布具温。 她就那樣靜靜地躺著蚕涤,像睡著了一般。 火紅的嫁衣襯著肌膚如雪铣猩。 梳的紋絲不亂的頭發(fā)上揖铜,一...
    開封第一講書人閱讀 49,816評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音达皿,去河邊找鬼天吓。 笑死,一個(gè)胖子當(dāng)著我的面吹牛峦椰,可吹牛的內(nèi)容都是我干的龄寞。 我是一名探鬼主播,決...
    沈念sama閱讀 38,957評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼汤功,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼物邑!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起滔金,我...
    開封第一講書人閱讀 37,718評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤拂封,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后鹦蠕,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,176評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡在抛,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,511評(píng)論 2 327
  • 正文 我和宋清朗相戀三年钟病,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片刚梭。...
    茶點(diǎn)故事閱讀 38,646評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡肠阱,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出朴读,到底是詐尸還是另有隱情屹徘,我是刑警寧澤,帶...
    沈念sama閱讀 34,322評(píng)論 4 330
  • 正文 年R本政府宣布衅金,位于F島的核電站噪伊,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏氮唯。R本人自食惡果不足惜鉴吹,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,934評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望惩琉。 院中可真熱鬧豆励,春花似錦、人聲如沸瞒渠。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,755評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至嫩痰,卻和暖如春剿吻,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背始赎。 一陣腳步聲響...
    開封第一講書人閱讀 31,987評(píng)論 1 266
  • 我被黑心中介騙來泰國(guó)打工和橙, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人造垛。 一個(gè)月前我還...
    沈念sama閱讀 46,358評(píng)論 2 360
  • 正文 我出身青樓魔招,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親五辽。 傳聞我的和親對(duì)象是個(gè)殘疾皇子办斑,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,514評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容