jQuery 实现图片的依次加载图片功能


Posted in jQuery onJuly 06, 2017

css代码:

ul#portfolio{margin:0;padding:0;}
ul#portfolio li{float: left;margin:0 5px 0 0;width:250px;height: 250px;list-style: none;}
ul#portfolio li.loading{background: url(../images/spinner.gif) no-repeat center center;}
ul#portfolio li img{width:250px;height: 250px;display: block;}

js代码:

$(function(){
  var images=new Array();
  images[0]='./images/ads_one.jpg';
  images[1]='./images/ads_two.jpg';
  images[2]='./images/ads_three.jpg';
  //获取了图像的数量
  var max=$(images).length;
  //如果包含一张以上的图像,那么创建对应的UL元素家人到wrapper div中,并且调用LoadImage方法。
   if(max>0){
    //create the UL element
    var ul=$('<ul id="portfolio"></ul>');
    //append to div#wrapper
    $(ul).appendTo($('#wrapper'));
    //load the first image
    LoadImage(0,max);
   }
  //在LoadImage方法中,循环遍历所有的图像,对每个图像创建li元素
  function LoadImage(index,max){
   if(index<max){
    //利用attr方法为li元素增加了css样式,即加上了loading的gif背景。
    var list=$('<li id="portfolio_'+index+'"></li>').attr('class','loading');
    //把li添加到ul元素中
    $('ul#portfolio').append(list);
    //获取当前的li元素
    var curr=$("ul#portfolio li#portfolio_"+index);
    //创建图像元素
    var img=new Image();
    //加载图像
    $(img).load(function(){
    $(this).css('display','none');
    $(curr).removeClass('loading').append(this);
    $(this).fadeIn('slow',function(){
      //采用回调函数的方法,在当前元素成功执行fadeIn方法之后 再去调用下一个元素的LoadImage方法,这样就能实现多个图像的顺序加载了。
      LoadImage(index+1,max);
    });
    }).error(function(){
      $(curr).remove();
      LoadImage(index+1,max);
    }).attr('src',images[index]);
   }
  }
})

以上所述是小编给大家介绍的jQuery 实现图片的依次加载图片,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

jQuery 相关文章推荐
使用jQuery卸载全部事件的思路详解
Apr 03 jQuery
jQuery回调方法使用示例
Jun 26 jQuery
jQuery、layer实现弹出层的打开、关闭功能
Jun 28 jQuery
jQuery 循环遍历改变a标签的href(实例讲解)
Jul 12 jQuery
JQuery用$.ajax或$.getJSON跨域获取JSON数据的实现代码
Sep 23 jQuery
浅谈jquery中ajax跨域提交的时候会有2次请求的问题
Nov 10 jQuery
使用jQuery 操作table 完成单元格合并的实例
Dec 27 jQuery
jQuery代码优化方法总结
Jan 29 jQuery
[原创]jQuery实现合并/追加数组并去除重复项的方法
Apr 11 jQuery
JS与jQuery实现ListBox上移,下移,左移,右移操作功能示例
May 31 jQuery
JS与jQuery判断文本框还剩多少字符可以输入的方法
Sep 01 jQuery
[jQuery] 事件和动画详解
Mar 05 jQuery
jQuery+ajax实现修改密码验证功能实例详解
Jul 06 #jQuery
jQuery实现选中行变色效果(实例讲解)
Jul 06 #jQuery
运用jQuery写的验证表单(实例讲解)
Jul 06 #jQuery
使用 jQuery 实现表单验证功能
Jul 05 #jQuery
jQuery制作input提示内容(兼容IE8以上)
Jul 05 #jQuery
jQuery常见面试题之DOM操作详析
Jul 05 #jQuery
jQuery使用ajax_动力节点Java学院整理
Jul 05 #jQuery
You might like
星际中的相关伤害
2020/03/04 星际争霸
php下实现在指定目录搜索指定类型文件的函数
2008/10/03 PHP
php中get_headers函数的作用及用法的详细介绍
2013/04/27 PHP
mcrypt启用 加密以及解密过程详细解析
2013/08/07 PHP
浅谈PHP中关于foreach使用引用变量的坑
2016/11/14 PHP
javascript中利用数组实现的循环队列代码
2010/01/24 Javascript
JS中for循序中延迟加载动态效果的具体实现
2013/08/18 Javascript
javascript数组快速打乱重排的方法
2014/01/02 Javascript
node.js中的fs.fchmod方法使用说明
2014/12/16 Javascript
jQuery中:button选择器用法实例
2015/01/04 Javascript
JS实现完全语义化的网页选项卡效果代码
2015/09/15 Javascript
如何解决easyui自定义标签 datagrid edit combobox 手动输入保存不上
2015/12/26 Javascript
jQuery技巧之让任何组件都支持类似DOM的事件管理
2016/04/05 Javascript
javaScript知识点总结(必看篇)
2016/06/10 Javascript
浅析Angular2子模块以及异步加载
2017/04/24 Javascript
解决bootstrap中使用modal加载kindeditor时弹出层文本框不能输入的问题
2017/06/05 Javascript
bootstrap+jQuery 实现下拉菜单中复选框全选和全不选效果
2017/06/12 jQuery
JS计算两个时间相差分钟数的方法示例
2018/01/10 Javascript
详解微信小程序的 request 封装示例
2018/08/21 Javascript
Vue-cli3多页面配置详解
2020/03/22 Javascript
详解Webpack抽离第三方类库以及common解决方案
2020/03/30 Javascript
vue中用 async/await 来处理异步操作
2020/07/18 Javascript
[39:46]完美世界DOTA2联赛PWL S2 LBZS vs Rebirth 第二场 11.25
2020/11/25 DOTA
python基础教程之序列详解
2014/08/29 Python
浅谈Python 列表字典赋值的陷阱
2019/01/20 Python
python简单贪吃蛇开发
2019/01/28 Python
详解python itertools功能
2020/02/07 Python
解决Jupyter NoteBook输出的图表太小看不清问题
2020/04/16 Python
Python xlrd/xlwt 创建excel文件及常用操作
2020/09/24 Python
CSS3盒子模型详解
2013/04/24 HTML / CSS
机械工程师求职自我评价
2013/09/23 职场文书
七年级地理教学反思
2014/01/26 职场文书
昆虫记读书笔记
2015/06/26 职场文书
利用Sharding-Jdbc进行分库分表的操作代码
2022/01/22 Java/Android
搭建Yolov5服务器
2022/04/30 Servers
Nginx 502 bad gateway错误解决的九种方案及原因
2022/08/14 Servers