首页 > 编程语言 > 详细

javascript图片预先加载

时间:2016-01-18 11:44:27      阅读:155      评论:0      收藏:0      [点我收藏+]
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
    
    </body>
    <script>
    var imgArr=["img/s1.png","img/s2.png","img/s3.png","img/s4.png","img/s5.png","img/s6.png","img/s7.png","img/s8.png",
            "img/s8.png","img/s10.png","img/s11.png","img/s12.png","img/s13.png","img/s14.png","img/s15.png","img/s16.png",
            "img/s17.png","img/s18.png","img/select.png"];
        preloadimages(imgArr).done(function(images){
            select()
        })
    function preloadimages(arr){   
    var newimages=[], loadedimages=0
    var postaction=function(){}  //此处增加了一个postaction函数
    var arr=(typeof arr!="object")? [arr] : arr
    function imageloadpost(){
        loadedimages++
        if (loadedimages==arr.length){
            postaction(newimages) //加载完成用我们调用postaction函数并将newimages数组做为参数传递进去
        }
    }
    for (var i=0; i<arr.length; i++){
        newimages[i]=new Image()
        newimages[i].src=arr[i]
        newimages[i].onload=function(){
            imageloadpost()
        }
        newimages[i].onerror=function(){
            imageloadpost()
        }
    }
    return { //此处返回一个空白对象的done方法
        done:function(f){
            postaction=f || postaction
        }
    }
}
    </script>
</html>

 

javascript图片预先加载

原文:http://www.cnblogs.com/ns10086/p/5138533.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!