懒加载

作者: kumabearplus | 来源:发表于2017-05-24 22:49 被阅读13次

    1、如何判断一个元素是否出现在窗口可视范围(浏览器的上边缘和下边缘之间,肉眼可视)。写一个函数 isVisible实现

    function isVisible($node){
          var windowHeight = $(window).height()
          var offsetTop = $node.offset().top
          var scrollTop = $(window).scrollTop()
          var nodeHeight = $node.outerHeight(true)
          if (scrollTop<offsetTop+nodeHeight&&scrollTop>offsetTop-windowHeight) {
            return true
          } else {
            return false
          }
        }
    

    2、当窗口滚动时,判断一个元素是不是出现在窗口可视范围。每次出现都在控制台打印 true 。用代码实现

        $(window).on('scroll',function(){
          if (isVisible($('#btn'))) {
              console.log('true')
          }    
        })
        function isVisible($node){
          var windowHeight = $(window).height()
          var offsetTop = $node.offset().top
          var scrollTop = $(window).scrollTop()
          var nodeHeight = $node.outerHeight(true)
          if (scrollTop<offsetTop+nodeHeight&&scrollTop>offsetTop-windowHeight) {
            return true
          } else {
            return false
          }
        }
    

    3、当窗口滚动时,判断一个元素是不是出现在窗口可视范围。在元素第一次出现时在控制台打印 true,以后再次出现不做任何处理。用代码实现

        $(window).on('scroll',function(){
          $('.pic-ct img').not('.load').each(function(){
            if (isVisible($(this))) {
              $(this).addClass('load')
              console.log('true')
            }
          })
        })
        function isVisible($node){
          var windowHeight = $(window).height()
          var offsetTop = $node.offset().top
          var scrollTop = $(window).scrollTop()
          var nodeHeight = $node.outerHeight(true)
          if (scrollTop<offsetTop+nodeHeight&&scrollTop>offsetTop-windowHeight) {
            return true
          } else {
            return false
          }
        }
    

    4、 图片懒加载的原理是什么?

    在页面载入的时候将页面上的img标签的src指向同一个图片, 把真实地址存放在一个自定义属性中。当图片显示在浏览器窗口可视位置时,再把图片的真实地址给src。

    5、实现视频中的图片懒加载效果

    pic-load

    6、实现视频中的新闻懒加载效果

    news代码
    mock代码

    相关文章

      网友评论

          本文标题:懒加载

          本文链接:https://www.haomeiwen.com/subject/hltaxxtx.html