专栏首页互联网杂技js图片的预加载功能

js图片的预加载功能

//单图片预加载
function preloadImg(url) {
    var img = new Image();
    img.src = url;
    if(img.complete) {//complete记得检查comlete属性
        //接下来可以使用图片了
        //do something here
    }
    else {
        img.onload = function() {
            //接下来可以使用图片了
            //do something here
        };
    }
}
//多图片预加载
function preloadImg(list) {
    var imgs = arguments[1] || [],  //用于存储预加载好的图片资源
        fn = arguments.cal  lee;
    if(list.length == 0) {
        return imgs;
    }
    var img = new Image();
    img.src = list[0];
    if(img.complete) {
        imgs.push(img);
        list.shift();
        fn(list, imgs);
    }
    else {
        img.onload = function() {
            imgs.push(img);
            list.shift();
            fn(list, imgs);
        };
    }
}
var list = [......],    //此处省略一万个字符
    imgs = preloadImg();

本文分享自微信公众号 - 交互设计前端开发与后端程序设计(interaction_Designer),作者:zhouli

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2015-06-27

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 黑客魔术!如何黑掉一台根本不联网的电脑

    2014年SONY公司遭到朝鲜黑客入侵,所有机密信息几乎被席卷而去。传说是员工在最后关头拔掉了网线才勉强保住了“底裤”。这种“拔网线”的做法看上去包治百病。然而...

    前朝楚水
  • 谷歌 Material Design 从这些方面打破了我思维局限 - 1

    这段时间为了研究控件,细看了一下 Material Design,结果发现了很多创新、好用又有趣的东西。如果你想看一看 Material Design 的译文或...

    前朝楚水
  • 简单理解通过原型继承

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head>...

    前朝楚水
  • 用深度学习做个艺术画家 ——模仿实现PRISMA

    用户1737318
  • CV基础教程:图像上的几何变换

    deephub
  • matlab图像加密

    在谈到图像加密之前,我先让大家简单了解一下密码学的基本原理。下面我先将一个小故事:

    艾木樨
  • matlab | 图像增强-模板处理

    对图片的像素值进行加减,在图片相加的时候为避免出现大于255的值,可以对两者图片进行加权处理。图片相减的时候,差值小于0时可以直接取0,当然也可以取绝对值。

    Rare0716
  • 图解 Elasticsearch 原理

    先自上而下,后自底向上的介绍ElasticSearch的底层工作原理,试图回答以下问题:

    芋道源码
  • bootstrap之图片的响应式

    前面提到了内容段落的响应式采用栅格系统进行不同设备的响应式,下面简单进行图片的样式和响应式介绍.

    十月梦想
  • 字符串提取

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    喜欢ctrl的cxk

扫码关注云+社区

领取腾讯云代金券