图片懒加载

178 阅读1分钟

图片懒加载是什么?

通俗来讲,图片懒加载就是图片一开始没有在可视区域的时候不进行加载,在进入到可视区域后才开始加载。

为什么要对图片进行懒加载处理?

图片懒加载可以减少同一时间页面需要获取的资源,以达到优化性能,增快页面加载速度,提升页面加载的流畅性的效果,从而提升客户端的体验感。

图片懒加载如何实现?

渲染页面时不给不可视区域的图片设置src路径,如果设置了就会立刻发送请求,当图片进入可视区域后才加载设置src。

如何判断进入可视区域?

监听页面滚动距离,获取图片距离顶部的距离,当图片距离顶部距离<(可视区域高度+页面卷去高度)就说明进入了可视区域,然后设置src路径即可。

使用组件库内的组件实现懒加载

例如在element-ui中: 注意:懒加载的容器都得设置宽高

     <div class="demo-image__lazy"> 
        <el-image v-for="url in urls" :key="url" :src="url" lazy></el-image>
     </div>

     <script>
        export default { 
           data() {
               return { 
                   urls: [   
                     'https://fuss10.elemecdn.com/a/3f/3302e58f9a181d2509f3dc0fa68b0jpeg.jpeg', 
                     'https://fuss10.elemecdn.com/1/34/19aa98b1fcb2781c4fba33d850549jpeg.jpeg', 
                     'https://fuss10.elemecdn.com/0/6f/e35ff375812e6b0020b6b4e8f9583jpeg.jpeg', 
                     'https://fuss10.elemecdn.com/9/bb/e27858e973f5d7d3904835f46abbdjpeg.jpeg', 
                     'https://fuss10.elemecdn.com/d/e6/c4d93a3805b3ce3f323f7974e6f78jpeg.jpeg', 
                     'https://fuss10.elemecdn.com/3/28/bbf893f792f03a54408b3b7a7ebf0jpeg.jpeg', 
                     'https://fuss10.elemecdn.com/2/11/6535bcfb26e4c79b48ddde44f4b6fjpeg.jpeg' 
                          ] 
                        } 
                      } 
                    }
       </script>
       
       <style>
           .demo-image__lazy {
               width:500px;
               height:350px;
               }
       </style>