進階-任務(wù)16

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

function isVisible($node){
        if ($node.offset().top < $(window).height()+$(window).scrollTop() && $(window).scrollTop() < $node.offset().top+$node.height()) {
          console.log(true)
        }
}

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

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

demo

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

var $div = $('div')
      $(window).on('scroll', function(e) {
        if(isVisible($div) && !$div.hasClass('showed')) {
          $div.addClass('showed')
          console.log(true)
        }
      })
      function isVisible($node){
        if ($node.offset().top < $(window).height()+$(window).scrollTop() && $(window).scrollTop() < $node.offset().top+$node.height()) {
          return true
        }
      }

demo

題目4: 圖片懶加載的原理是什么?

對于圖片過多的頁面,為了防止請求阻塞,加速頁面加載速度,所以很多時候我們需要將頁面內(nèi)未出現(xiàn)在可視區(qū)域內(nèi)的圖片先不做加載, 等到滾動到可視區(qū)域后,再去位圖片設(shè)置src屬性進行加載。
這樣子對于頁面加載性能上會有很大的提升,也提高了用戶體驗。

題目5: 實現(xiàn)視頻中的圖片懶加載效果

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

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

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