图片异步加载

/*图片递归异步延迟加载*/
/*一次只能加载一张,费劲*/
loadImages(0);
function loadImages(n){
    var li=$.create('li',{});
    $("footer ul").append(li);
    var temp=$.create('img',{src:"img/image.png",id:"img"+n});
    li.append(temp);
    var img = new Image();
        img.src = data.images[n].src;
        img.addEventListener('load', function(){                                        $("#img"+n).attr({src:img.src})
        n++;
        if(n<data.images.length){
          loadImages(n);
        }
    }, false);
}

/*
第二种方法,把页面文字先渲染后,在选择所有的图片,异步一张张的更换src
*/

loadImages(data.goods_img);
        function loadImages(data){
            var all=$("#scroller img");
            loading(0);
            function loading(n){
                var img=new Image();
                img.src=data[n];
                img.addEventListener('load',function(){
                    all[n].src=img.src;
                    n++;
                    if(n<all.length){
                        loading(n);
                    }
                });
            }
        }

/*
*突然感觉上面两种都好蛋疼,都是递归一张张替换。遂有第三种
*/

function lazyload(){
    var imgs=document.getElementsByTagName('img');
    for (var i = 0; i < imgs.length; i++) {
        (function(index){
            var img = new Image();
            img.src=imgs[index].dataset.src;
            img.setAttribute("data-index",i);
            img.onload=function(){
                var index=parseInt(img.dataset.index);
                imgs[index].src=img.src;
            }
        })(i);
    };
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值