進(jìn)階任務(wù)16 懶加載

題目1:如何判斷一個元素是否出現(xiàn)在窗口可視范圍(瀏覽器的上邊緣和下邊緣之間,肉眼可視)。寫一個函數(shù) isVisible實(shí)現(xiàn)


    function isVisible($node) {
      var scroHeight = $(window).scrollTop();
      var windowHeight = $(window).height();
      if($node.offset().top<scroHeight+windowHeight && $node.offset().top > scroHeight) {
        return true
      }  
        return false
  }  

題目2:當(dāng)窗口滾動時,判斷一個元素是不是出現(xiàn)在窗口可視范圍。每次出現(xiàn)都在控制臺打印 true 。用代碼實(shí)現(xiàn)

 $(window).on('scroll',function() {
   function isVisible($node) {
      var scroHeight = $(window).scrollTop();
      var windowHeight = $(window).height();
      if($node.offset().top<scroHeight+windowHeight && $node.offset().top > scroHeight) {
        console.log('true')
    }
})

題目3:當(dāng)窗口滾動時,判斷一個元素是不是出現(xiàn)在窗口可視范圍。在元素第一次出現(xiàn)時在控制臺打印 true,以后再次出現(xiàn)不做任何處理。用代碼實(shí)現(xiàn)

 var isAppear = false  //設(shè)置初始變量為false;
  $(window).on('scroll',function() {
   function isVisible($node) {
      if (!isAppear) {   //當(dāng)還未打印過true的時候執(zhí)行函數(shù)
      var scroHeight = $(window).scrollTop()
      var windowHeight = $(window).height()
      var $nodeTop = $node.offset().top

      if( $nodeTop <scroHeight+windowHeight && $nodeTop > scroHeight) {
        console.log ('true')
        }
        isAppear=true  //打印過true時,變量設(shè)置為true,后面就不會執(zhí)行了
      }
   }
    isVisible($node)  
 })

題目4: 圖片懶加載的原理是什么?
當(dāng)訪問一個頁面時,先把元素的圖片路徑設(shè)置為一個相同的路徑,這樣只用請求一次,當(dāng)元素進(jìn)入窗口可視區(qū)域時,再將元素圖片設(shè)置為真正的圖片路徑,讓圖片顯示出來。

題目5效果預(yù)覽

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1- 如何判斷一個元素是否出現(xiàn)在窗口可視范圍(瀏覽器的上邊緣和下邊緣之間,肉眼可視)。用函數(shù)isVisible實(shí)現(xiàn)...
    osborne閱讀 543評論 0 1
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,058評論 25 709
  • 題目1:如何判斷一個元素是否出現(xiàn)在窗口可視范圍(瀏覽器的上邊緣和下邊緣之間,肉眼可視)。寫一個函數(shù) isVisib...
    mhy_web閱讀 270評論 0 0
  • 時間對每個人來說都是公平的,所以在工作中不能浪費(fèi)時間。
    劉2傻閱讀 357評論 0 0
  • 一寸光陰,一寸金,寸金難買寸光陰。都知道時間是寶貴的財(cái)富,卻不知道積累財(cái)富要花許多的時間。今天想跟大家聊聊累積的力...
    CBE教育聯(lián)盟閱讀 252評論 0 0

友情鏈接更多精彩內(nèi)容