图片懒加载 优化页面性能

2019-06-20  本文已影响0人  stringtoString

什么是懒加载
懒加载其实就是延迟加载,是一种对网页性能优化的方式,比如当访问一个页面的时候,优先显示可视区域的图片而不一次性加载所有图片,当需要显示的时候再发送图片请求,避免打开网页时加载过多资源。

下面我们就做一个懒加载的小案例:

<body>
    <div>我是内容</div>  //在div加载过后 当img节点距离满足条件后加载img图片
    <img id="img" src="" alt=""> 

添加样式:

<style>
        body {
            height: 1000px;  //给body一个高度
        }
        div {
            width: 200px;
            height: 500px;
            background-color: blue;
        }
        #img {
            width: 300px;
            height: 200px;
        }
</style>

当你为图片的src赋值时,DOM节点渲染完毕时就会主动去请求src指向的资源,即使该图片不在用户的可视范围。那么,如果图片太多,加载页面的速度会就会变慢

<script>
        var url = './image/2.jpg';  //将图片路径付给一个变量
        var img = document.getElementById('img')  //获取img
         //给页面设置监听滚动事件
        document.onscroll = function(e) {
           var sT =  document.documentElement.scrollTop || 
                      document.body.scrollTop;
            if(sT >= img.offsetTop - window.innerHeight) {
                img.src = url;
                //img.offsetTop 图片距离顶部的距离 固定值
                //window.innerHeight 可视区的高度
            }
        }

今天的分享就到这里啦,如有错误欢迎不吝指出。

上一篇 下一篇

猜你喜欢

热点阅读