• <abbr id="chdyf"></abbr>
    <ruby id="chdyf"><acronym id="chdyf"><meter id="chdyf"></meter></acronym></ruby>
    <bdo id="chdyf"></bdo>
    <dfn id="chdyf"><menu id="chdyf"></menu></dfn>
    1. <menuitem id="chdyf"></menuitem><strong id="chdyf"><menu id="chdyf"></menu></strong>

      <rt id="chdyf"><menu id="chdyf"></menu></rt>
      成人小说一区二区三区,伊人精品成人久久综合全集观看,久久HEZYO色综合,中文字幕精品人妻熟女,影音先锋成人网站,我要看免费一级毛片,中国女人做爰A片,中文字幕av久久爽Av

      懶加載封裝實現

      2018-5-24    高勁

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

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

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

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

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

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

      (3)將要展示圖片shouldshow函數,獲取屏幕可視寬度,滾動高度,要展示的元素到文檔的高度,如果元素到文檔的高度小于屏幕的可視高度加上滾動高度,說明元素已在可視區內,返回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)“展示圖片”函數,將元素的src屬性替換為自定義屬性data-src(真正圖片的地址)。

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

      (5)函數返回一個對象

                    return {
                              init : init
                 }

            這樣就實現懶加載封裝了!

      日歷

      鏈接

      個人資料

      藍藍設計的小編 http://www.wtxcl.cn

      存檔

      主站蜘蛛池模板: 国产亚洲人成A在线V网站| 国产盗摄人妻精品一区| 日本成人有码| 久久久久亚洲AV成人无码网站| 亚洲国产VA| 免费国产黄网站在线观看| 2021国产精品久久| 逆3p在线| 无码中文幕| 亚洲欧美日韩综合在线一区二区三区 | 国产午夜精品免费一区二区三区| 久久99嫩草熟妇人妻蜜臀| 如何看色黄视频中文字幕| 三浦在线| 福利精品| 日韩欧美一级特黄大片| 中文无码一区二区不卡AV| 墨玉县| 亚洲自拍偷拍一区| 亚洲V色| 欧美国产日韩久久MV| 潘金莲a级片| 色婷久久| 久操无码| 免费3?P视频久久| 国产在热线精品视频国产一二| 丰满少妇被猛烈进入无码| 国产美女久久久久| 午夜久久av| 91热视频| 茄子av| 精品综合视频精品| 91无码国产成人精品| 亚洲男人在线| 超碰福利导航| www.欧美日韩| 又长又大又黑又粗欧美| 国产精品极品美女自在线| 老子影院午夜精品无码| 人妻久久久| 亚洲wwww|