当前位置:首页 » 代码教程 » 网站图片懒加载如何实现(LazyLoad按需加载)

网站图片懒加载如何实现(LazyLoad按需加载)

对于一些拥有大量图片的网站来说,如果一个页面有超过 50 张图片,就会造成网站页面加载太慢以及移动端耗费流量太大。为了解决这样的问题,可以使用LazyLoad按需加载,又称懒加载。

LazyLoad按需加载

什么是LazyLoad按需加载
LazyLoad按需加载采用图片按需加载技术,打开页面时只会加载首屏图片。访客往下滚动时才会陆续加载需要展现的图片,这样非常高效,体验舒适。

LazyLoad按需加载实现方法
我们在自己做网站时,也可以实现LazyLoad按需加载,增强网站的用户体验。下面学做网站论坛就来介绍一下LazyLoad按需加载实现方法。(以下会使用到HTML代码,如果对代码不熟悉,可以学习一下html视频教程)

引入LazyLoad按需加载必须的二个文件:jquery.js和jquery.lazyload.js。引入方法很简单,只需将下面的代码放到</head>标签上方即可;
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script>
$(function() {
        imgLazyLoad();//初始化
        $(document).scroll(imgLazyLoad); //当滚动条滚动时,扫描需要加载的div
 
        //扫描需要加载的div
        function imgLazyLoad() {
            $.each($("body img.lazy"), function (i, o) {
                //获取窗口高度
                var windowHeight = $(window).height();  //  windowHeight = windowHeight/2; 设置滚动条在显示屏幕高度2分之1的时候加载图片
                //获取滚动条
                var scrollTop = $(document).scrollTop();
                //先判断是否是加载完的图片 跳出
                if ($(o).attr("src") == $(o).attr("data-original")) {
                    return true;
                } else if ($(o).offset().top <= (scrollTop + windowHeight) && $(o).offset().top >= scrollTop) {//判断div是不是出在可见的位置
                    if ($(o).attr("data-original") != undefined || $(o).attr("data-original") != "undefined") {
                        var ObjectSrc = $(o).attr("data-original");
                        //把pic的值赋给src值
                        $(o).attr("src", ObjectSrc);
                        //css属性改为可见
                        $(o).css("visibility", "visible");
                        //渐变时间和渐变值
                        $(o).fadeTo(1000, 1.00);
                    }
                }
            });
        }
    });
</script>
网站上所有图片都使用以下的格式书写:
<img class="lazy" src="" data-original="图片地址" width="100" height="100" alt="">

在网站的</body>标签上面,放上以下的css代码,来实现LazyLoad按需加载(懒加载);
<style>
    img.lazy{
        visibility: visible;
        opacity: 0.00;
        filter: alpha(opacity=0);
        -moz-opacity: 0.0;
    }
</style>

这样,我们自己在建网站时,也可以轻松实现LazyLoad按需加载(懒加载)了。快去自己的网站上试试吧!
End
温馨提示:如果您对本文有疑问,请在本页留言即可!!!
觉得很赞 (8)付款方式
X
付款方式:
  • 微信
  • 支付宝
  • QQ红包

使用微信扫一扫
blogger
    发布日期:2019-09-15   所属类别:代码教程   浏览:10297次   评论:5次
    本文地址:http://www.shuyong.net/chengxu/1108.html [ 百度已收录 ]
    声明:本页信息由网友自行发布或来源于网络,真实性、合法性由发布人负责,请仔细甄别!本站只为传递信息,我们不做任何双方证明,也不承担任何法律责任。文章内容若侵犯你的权益,请联系本站删除!

留言/评论:◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

填写好QQ号码,任点空白处自动获取

昵称

邮箱

网址

5楼、密封件产品 [回复该留言]
2020-02-19 06:41
确实不错,来学习下
4楼、头条 [回复该留言]
2019-11-24 15:52
文章不错支持一下吧
3楼、短信验证码 [回复该留言]
2019-10-10 09:17
这个有用!加快网页加载速度!
2楼、米石文创 [回复该留言]
2019-10-08 13:01
现在网速都不错。感觉这种以后都不需要了
1楼、托管中心加盟 [回复该留言]
2019-09-16 09:18
增加用户体验度,能大大留住用户

个人资料

舍力

博主:舍力

Emlog交流群

    简单的道理,复杂的人生!

博客统计

  • 文章数量:1133篇
  • 文章评论:3520条
  • 总访问量:10299133次
  • 微语数量:81条
  • 在线人数:3人
  • 本站运行:11年2月27天
  • 估计博主很忙,已经很久没更新了!
Q2 虚位以待
Copyright © 2024 舍力博客 版权所有   粤ICP备11021420号
基于宝塔面板,数据存储于阿里云ECS
Powered by emlog / &Author 舍力博客.