Web前端之路

在移动端实施图片分段加载

2016-01-20  本文已影响615人  stois

需求:
在移动端web应用内,每一屏(称之为slide)有其先后的顺序,自然地,根据slide的顺序,某些位于“后面”的图片不应该在页面第一次loading的时候加载,根据用户的动作(点击,上滑等)伺机加载图片是一种选择。

简单的替换:

<img class="p2Load" data="images/p2-star-3.png" src="" alt="">

原来放在src里的图片链接,现在移入data(随便什么名字)内,那么在加载dom的时候就不会去加载图片了。

所以接下来是在某个事件发生时,对class=pXLoad的所有元素进行图片加载。

function lazyLoad(page){
        
        var tmp = $('.p'+page+'Load').size();
                console.log(tmp);
                for( var i = 0 ; i < tmp ; i++ ){
                    var image = new Image();
                    image.onload = function(){
                        var me = i ;
                        return function(){
                            console.log(me);
                             $('.p'+page+'Load')[me].setAttribute('src', $('.p'+page+'Load')[me].getAttribute('data'));
                        }
                    }(i);
                    
                    var me = $('.p'+page+'Load')[i];
                    console.log(me.getAttribute('data'));
                    image.src = me.getAttribute('data');
                }
        
    }
上一篇 下一篇

猜你喜欢

热点阅读