美文网首页
图片懒加载

图片懒加载

作者: 喵呜Yuri | 来源:发表于2018-08-15 17:43 被阅读6次
image.png

原理:当img标签中有src时,它就会试图去加载src中的内容,实现一次请求。而我们不再img中写src,而是data-src(也可以是别的名字)只在图片滚动到屏内视野中时,将data-src的内容加到src中完成请求和加载。这样类似于图很多的首页面打开时不会一股脑请求所有图片,而是翻到哪加载到哪

以下代码全贴进去可以运行。
并实现了附加功能,如果你的图片路径错误不能加载,左上角会出现一个丑丑的image not found的小图标,解决办法就是添加 onerror="errorFn(this)"

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        .con{
            background: #eee;
        }
        .con .nav-con-yard-item{
            width:100%;
            background: #fff;
            border:1px solid #333;
            margin-bottom: 15px;
        }
        .con .nav-con-yard-item img{
            display: inline-block;
            width:100%;
            height:120px;
            background: #f2f2f2;
        }
    </style>
</head>
<body>
<script>
    function errorFn(this_) {
        this_.src='https://static.nalada.cn/yard/20180810/1226556810.jpeg'
    }
</script>
<div class="con">


            <div class="nav-con-yard-item"><img data-src="https://static.nalada.cn/yard/20180810/1226556810.jpeg" data-alt="7号院室外" onerror="errorFn(this)"></div>
            <div class="nav-con-yard-item"><img data-src="https://static.nalada.cn/yard/20180804/2336404103.jpeg" alt="7号院室外"></div>
            <div class="nav-con-yard-item"><img data-src="https://static.nalada.cn/yard/20180804/2336404001.jpeg" alt="7号院客厅"></div>
            <div class="nav-con-yard-item"><img data-src="https://static.nalada.cn/yard/20180810/1226552426.jpeg" alt="7号院室外"></div>
            <div class="nav-con-yard-item"><img data-src="https://static.nalada.cn/yard/20180804/2336402007.jpeg" alt="7号院客厅"></div>
            <div class="nav-con-yard-item"><img data-src="https://static.nalada.cn/yard/20180810/1226556236.jpeg" alt="7号院卧室"></div>
            <div class="nav-con-yard-item"><img data-src="https://static.nalada.cn/yard/20180810/1226552390.jpeg" alt="7号院卧室"></div>
            <div class="nav-con-yard-item"><img data-src="https://static.nalada.cn/yard/20180804/2336409343.jpeg" alt="7号院卧室"></div>
            <div class="nav-con-yard-item"><img data-src="https://static.nalada.cn/yard/20180810/1229592601.jpeg" alt="7号院卧室"></div>
            <div class="nav-con-yard-item"><img data-src="https://static.nalada.cn/yard/20180810/1226559846.jpeg" alt="7号院卫生间"></div>

</div>
<script src="../../../static/list/jquery-1.12.4.min.js"></script>
<script>
    $(window).scroll(function (e) {
        var screenTop = parseFloat($(this).scrollTop());
        imglazyoadFn(screenTop);
    });
    function imglazyoadFn(screenTop) {
        $('[data-src]').each(function (k,v) {
            var isCanLoad = screenTop+parseFloat($(window).height())> parseFloat($(v).offset().top);
            if(isCanLoad){
                $(v).attr('src',$(v).attr('data-src'));
                $(v).attr('alt',$(v).attr('data-alt'));
            }
        });
    }
    imglazyoadFn(0);

    function errorFn(this_) {
        this_.src='http://img.sccnn.com/bimg/338/24556.jpg';
    }
</script>
</body>
</html>

相关文章

  • 项目优化

    图片懒加载,数据懒加载, 路由懒加载 1.图片懒加载原理 1.1 开始时 不设置src属性 1.2 图片在可视区域...

  • JS

    JS 懒加载,预加载 概念:懒加载也叫延迟加载:JS图片延迟加载,延迟加载图片或符合某些条件时才加载某些图片。预加...

  • 图片懒加载

    懒加载与预加载的基本概念。 懒加载也叫延迟加载:JS图片延迟加载 延迟加载图片或符合某些条件时才加载某些图片。 预...

  • 图片懒加载

    图片懒加载 图片懒加载在一些图片密集型的网站中运用比较多,通过图片懒加载可以让一些不可视的图片不去加载,避免一次性...

  • js 实现图片懒加载

    一、懒加载 懒加载也叫延迟加载,Js中图片的延迟加载,延迟图片需要符合某些条件时才加载;对于图片过多的页面,为了加...

  • 图片懒加载和预加载

    图片懒加载的原理是什么? 首先明白为什么要懒加载: 懒加载即延迟,对于图片过多的页面,为了加快页面加载速度,我们需...

  • selenuim和phantonJs处理网页动态加载数据的爬取

    一.图片懒加载 什么是图片懒加载? 图片懒加载是一种网页优化技术。图片作为一种网络资源,在被请求时也与普通静态资源...

  • 懒加载和瀑布流

    一、简述图片懒加载的实现原理 图片懒加载 若一开始,页面上有许多的图片要加载,而如果同时加载这么多图片,会消耗性能...

  • jquery懒加载、回到顶部

    1.知识点部分: 懒加载图片的原理是什么? 图片懒加载也称为曝光加载,将页面上的图片分批加载,只有当图片出现在wi...

  • 懒加载和预加载

    1)概念: 懒加载也叫延迟加载:JS图片延迟加载,延迟加载图片或符合某些条件时才加载某些图片。预加载:提前加载图片...

网友评论

      本文标题:图片懒加载

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