javascript顺序加载图片的方法


Posted in Javascript onJuly 18, 2015

本文实例讲述了javascript顺序加载图片的方法。分享给大家供大家参考。具体如下:

javascript监听一个图片是否加载完毕 如果加载完成再加载下一张,不是一次性从服务器加载 减少服务器压力,
可用到的地方:比如制作类似google地图的应用,可以使小图一张一张的加载

function Load_pic(arr){
 this.loop_f=function(i,o_file,len,f,obj){
   if(i<len-1){
     i=i+1;
     f(i,o_file,len,obj);
     }
  };
  this.creat_pic=function(i,o_file,len,obj){
    var f=arguments.callee,
    doc=document,
    image = doc.createElement("img");  
    image.src =o_file[i];
    i<len?doc.getElementsByTagName("body")[0].appendChild(image):'';
    if(navigator.userAgent.indexOf("MSIE")>0){ 
        if($.browser.version==6.0 || $.browser.version==9.0){
        //IE9和IE6一样 微软真是怪异
          image.onreadystatechange = function () { 
            if (image.readyState == "complete"){ 
              obj.loop_f(i,o_file,len,f,obj);
            } 
          }; 
        }else{ 
          ie7imagetime = window.setInterval(function(){ 
            var rs = image.readyState; 
            if(rs=="complete"){ 
              window.clearInterval(ie7imagetime); 
              obj.loop_f(i,o_file,len,f,obj);
            }else{ 
              return; 
            } 
          },200); 
        } 
      }else{ 
        image.onload = function () { 
          if (image.complete == true){ 
          obj.loop_f(i,o_file,len,f,obj);
          } 
        }; 
    }
  }; 
   if(arr.constructor===Array){
   var len=arr.length,
      i=0;
   i<len?this.creat_pic(i,arr,len,this):'';
  };
 }
//调用方法
new Load_pic([
'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/0_0.gif',
'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/0_1.gif',
'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/0_2.gif',
'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/0_3.gif',
'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/1_0.gif',
'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/1_1.gif',
'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/1_2.gif',
'http://gomap.dashilan.cn/jquery-mobile/map/cq/1/img_1/1_3.gif'
]);
//注意要调用jquery 用于判断浏览器

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
JQUERY操作JSON实例代码
Feb 09 Javascript
node.js中的path.basename方法使用说明
Dec 09 Javascript
jQuery实现的经典滑动门效果
Sep 22 Javascript
Jquery实现简单的轮播效果(代码管用)
Mar 14 Javascript
javascript对象的相关操作小结
May 16 Javascript
layui获取选中行数据的实例讲解
Aug 19 Javascript
vue中实现回车键登录功能
Feb 19 Javascript
JS面试题中深拷贝的实现讲解
May 07 Javascript
JS实现简单移动端鼠标拖拽
Jul 23 Javascript
JavaScript实现点击出现子菜单效果
Feb 08 Javascript
详解gantt甘特图可拖拽、编辑(vue、react都可用 highcharts)
Nov 27 Vue.js
JavaScript架构搭建前端监控如何采集异常数据
Jun 25 Javascript
javascript字符串循环匹配实例分析
Jul 17 #Javascript
动态加载jQuery的两种方法实例分析
Jul 17 #Javascript
javascript父子页面通讯实例详解
Jul 17 #Javascript
javascript实现的闭包简单实例
Jul 17 #Javascript
javascript实现的字符串与十六进制表示字符串相互转换方法
Jul 17 #Javascript
JavaScript实现基于十进制的四舍五入实例
Jul 17 #Javascript
JavaScript之AOP编程实例
Jul 17 #Javascript
You might like
MySQL修改密码方法总结
2008/03/25 PHP
Ajax+PHP边学边练 之五 图片处理
2009/12/03 PHP
php下保存远程图片到本地的办法
2010/08/08 PHP
老版本PHP转义Json里的特殊字符的函数
2015/06/08 PHP
详解PHP归并排序的实现
2016/10/18 PHP
Laravel timestamps 设置为unix时间戳的方法
2019/10/11 PHP
js 替换
2008/02/19 Javascript
JQuery的一些小应用收集
2010/03/27 Javascript
基于jquery的商品展示放大镜
2010/08/07 Javascript
仿微博字符限制效果实现代码
2012/04/20 Javascript
JavaScript获取文本框内选中文本的方法
2015/02/20 Javascript
JavaScript中Window对象的属性及事件
2015/12/25 Javascript
详解用原生JavaScript实现jQuery的某些简单功能
2016/12/19 Javascript
bootstrap的工具提示实例代码
2017/05/17 Javascript
在vue中更换字体,本地存储字体非引用在线字体库的方法
2018/09/28 Javascript
浅析Proxy可以优化vue的数据监听机制问题及实现思路
2018/11/29 Javascript
微信小程序实现form表单本地储存数据
2019/06/27 Javascript
javascript实现放大镜功能
2020/12/09 Javascript
Python的Django框架中从url中捕捉文本的方法
2015/07/20 Python
Python算法应用实战之栈详解
2017/02/04 Python
Django使用httpresponse返回用户头像实例代码
2018/01/26 Python
浅谈tensorflow中dataset.shuffle和dataset.batch dataset.repeat注意点
2020/06/08 Python
3种方式实现瀑布流布局小结
2019/09/05 HTML / CSS
德国购买踏板车网站:Microscooter
2019/10/14 全球购物
荷兰最大的鞋子、服装和运动折扣店:Bristol
2021/01/07 全球购物
汇源肾宝广告词
2014/03/20 职场文书
本科毕业生自荐信
2014/05/26 职场文书
学校清明节活动总结
2014/07/04 职场文书
展览会邀请函
2015/02/02 职场文书
三下乡个人总结
2015/03/04 职场文书
运动与健康自我评价
2015/03/09 职场文书
教师岗位职责范本
2015/04/02 职场文书
python+opencv实现视频抽帧示例代码
2021/06/11 Python
浅谈Go语言多态的实现与interface使用
2021/06/16 Golang
MySQL子查询中order by不生效问题的解决方法
2021/08/02 MySQL
JS前端使用canvas实现扩展物体类和事件派发
2022/08/05 Javascript