• <center id="sm46c"></center>
  • <dfn id="sm46c"></dfn>
  • <strike id="sm46c"></strike>
  • <cite id="sm46c"><source id="sm46c"></source></cite>
    • <strike id="sm46c"><source id="sm46c"></source></strike>
      <option id="sm46c"></option>
      国产精品天天看天天狠,女高中生强奷系列在线播放,久久无码免费的a毛片大全,国产日韩综合av在线,亚洲国产中文综合专区在,特殊重囗味sm在线观看无码,中文字幕一区二区三区四区在线,无码任你躁久久久久久老妇蜜桃

      懶加載封裝實(shí)現(xiàn)

      2018-5-24    周周

      1.什么是懶加載?
               當(dāng)訪問一個(gè)頁面的時(shí)候,先把img元素背景圖片路徑替換成一張?zhí)娲鷪D片的路徑(這樣就只需請求一次,占位圖),將圖片的真實(shí)路徑存儲在img自定義屬性中,只有當(dāng)圖片出現(xiàn)在瀏覽器的可視區(qū)域內(nèi)時(shí),才設(shè)置圖片正真的路徑,讓圖片顯示出來。這就是圖片懶加載。
      2.為什么要用懶加載?
             很多頁面,內(nèi)容很豐富,頁面很長,圖片較多。比如說各種商城頁面。這些頁面圖片數(shù)量多,而且比較大,少說百來K,多則上兆。要是頁面載入就一次性加載完畢,提高首屏加載速度,可以減輕服務(wù)器壓力,節(jié)約流量,用戶體驗(yàn)好。
      3.懶加載實(shí)現(xiàn)封裝?

          lazyLoad由四個(gè)函數(shù)組成,init(初始化函數(shù)),checkShow(判斷圖片是否加載),shouldShow(將要展示的圖片),showImg(展示圖片)。

      (1)初始化函數(shù)(init)  由于滾動事件太消耗性能,所以用定時(shí)器替換,不是滾動就觸發(fā),而是滾動后200毫秒后觸發(fā)。

                      var timer;
                      function init(){
                          $(window).on("scroll",function(){
                              if(timer){
                                  clearTimeout(timer);
                              }
                              timer = setTimeout(function(){
                                  checkShow();  //
                              },200);
                          });
                      }

      (2)判斷”圖片是否加載“(checkshow)函數(shù),如果圖片有isload屬性,就說明圖片已經(jīng)加載過了,直接return。如果圖片沒有isload屬性,進(jìn)入將要展示圖片shouldshow函數(shù)

                      function checkShow(){
                          $lazyLoad.each(function(){
                              $cur = $(this);
                              if($cur.attr('isLoaded')){
                                  return;
                              }
                              if(shouldShow($cur)){
                                  showImg($cur);
                              }
                          });
                      }

      (3)將要展示圖片shouldshow函數(shù),獲取屏幕可視寬度,滾動高度,要展示的元素到文檔的高度,如果元素到文檔的高度小于屏幕的可視高度加上滾動高度,說明元素已在可視區(qū)內(nèi),返回true,否則返回false。

                     function shouldShow ($node){
                          var scrollH = $(window).scrollTop(),
                              windowH = $(window).height(),
                              top = $node.offset().top;
                          if(top < windowH + scrollH){
                              return true;
                          } else {
                              return false;
                          }

                      }

      (4)“展示圖片”函數(shù),將元素的src屬性替換為自定義屬性data-src(真正圖片的地址)。

                      function showImg ($node){
                          $node.find("img").attr("src",$node.data("src"));
                          $node.attr("isLoaded",true);
                      }

      (5)函數(shù)返回一個(gè)對象

                    return {
                              init : init
                 }

            這樣就實(shí)現(xiàn)懶加載封裝了!

      日歷

      鏈接

      個(gè)人資料

      存檔

      主站蜘蛛池模板: 色99久久久久高潮综合影院| 久久久久久久久久国产精品| 一区二区三区四区在线不卡高清| 麻豆国产传媒精品视频| 国产丰满人妻一区二区| 久久精品国产久精国产果冻传媒| 日韩精品亚洲一区在线综合| 久久人妻av一区二区软件| 激情午夜婷婷| 国内熟妇与亚洲洲熟妇妇| 欧美亚洲国产一区| 五月婷婷激情四射| 激情综合网激情五月激情| 久久国产精品-国产精品| 亚洲国产欧美日韩在线人成| 国产精品免费第一区二区| 久久国产精品老女人| 亚洲香蕉在线| 熟妇丰满多毛的大隂户| 久久精品国产99精品亚洲 | 乱人伦中文无码视频| 荥经县| 久章草在线毛片视频播放| 少妇激情a∨一区二区三区| 丁香五月亚洲综合在线| 在线观看精品国产福利片100| 草裙社区精品视频三区免费看| 色偷偷久久一区二区三区 | 亚洲永久精品日韩成人av| 亚洲AV无码专区在线电影天堂| 无码aⅴ精品一区二区三区| 国产精品v片在线观看不卡| 丁香五月亚洲综合在线| 色综合天天操| 99精品国产在热久久无| 秋霞A级毛片在线看| 灵武市| 伊人久久大香线蕉综合观| 久久婷婷五月综合色一区二区| 日本道高清一区二区三区| 亚洲AV无码专区在线电影天堂|