1. <html>
  2. <title>js图片未加载完显示loading效果</title>
  3. <body>
  4. <style>
  5. img{float:left;width:200px;height:200px;margin:0 10px 10px 0}
  6. </style>
  7. <script>
  8. //判断浏览器
  9. var Browser=new Object();
  10. Browser.userAgent=window.navigator.userAgent.toLowerCase();
  11. Browser.ie=/msie/.test(Browser.userAgent);
  12. Browser.Moz=/gecko/.test(Browser.userAgent);
  13.  
  14. //判断是否加载完成
  15. function Imagess(url,imgid,callback){
  16. var val=url;
  17. var img=new Image();
  18. if(Browser.ie){
  19. img.onreadystatechange =function(){
  20. if(img.readyState=="complete"||img.readyState=="loaded"){
  21. callback(img,imgid);
  22. }
  23. }
  24. }else if(Browser.Moz){
  25. img.onload=function(){
  26. if(img.complete==true){
  27. callback(img,imgid);
  28. }
  29. }
  30. }
  31. //如果因为网络或图片的原因发生异常,则显示该图片
  32. img.onerror=function(){img.src="http://www.86y.org/images/failed.png"}
  33. img.src=val;
  34. }
  35.  
  36. //显示图片
  37. function checkimg(obj,imgid){
  38. document.getElementById(imgid).style.cssText="";
  39. document.getElementById(imgid).src=obj.src;
  40. }
  41. //初始化需要显示的图片,并且指定显示的位置
  42. window.onload=function(){
  43. var imglist=document.getElementById("imagelist").getElementsByTagName('img');
  44. for(i=0;i<imglist.length;i++)
  45. {
  46.   imglist[i].id="img0"+i;
  47.   //imglist[i].src="http://www.86y.org/images/loading.gif";
  48.   imglist[i].style.cssText="background:url(http://www.86y.org/images/loading.gif) no-repeat center center;"
  49.   Imagess(imglist[i].getAttribute("data"),imglist[i].id,checkimg);
  50. }
  51. }
  52. </script>
  53. <div id="imagelist">
  54.   <img data="http://www.smashingapps.com/wp-content/uploads/2013/05/uikitsforwebmobile17s.jpg" />
  55.   <img data="http://www.smashingapps.com/wp-content/uploads/2013/05/uikitsforwebmobile13.jpg" />
  56.   <img data="http://www.smashingapps.com/wp-content/uploads/2013/05/uikitsforwebmobile39.jpg" />
  57.   <img data="http://www.smashingapps.com/wp-content/uploads/2013/05/uikitsforwebmobile10.jpg" />
  58.   <img data="http://www.smashingapps.com/wp-content/uploads/2013/05/uikitsforwebmobile14.jpg" />
  59. </div>
  60. </body>
  61. </html>

js图片未加载完显示loading效果的更多相关文章

  1. 在页面未加载完之前显示loading动画

    在页面未加载完之前显示loading动画 这里有很多比这篇博客还优秀的loading动画源码 我还参考这篇博客 loading动画代码demo 我的demo预览 <!DOCTYPE html&g ...

  2. lufylegend:图片的加载和显示

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

  3. js图片实时加载

    浏览大型网站,特别是图片比较多的图片,如大型的电商网站,你会发现处了第一屏外,往下滚动的时候图片才加载出来,没必要一开始加载就要把全部图片加载出来,这样子打开网面的速度得到了很好提高.以下是笔者目前所 ...

  4. Selenium截屏 图片未加载的问题解决--【懒加载】

    需求: 截屏后转PDF. 问题: selenium截屏后,图片未加载 如下图: 原因: 网站使用了懒加载技术:只有在浏览器中纵向滚动条滚动到指定的位置时,页面的元素才会被动态加载. 什么是图片懒加载? ...

  5. JQuery_图片未加载!

    JQuery_图片未加载! <html> <head> <script type="text/javascript" src="/jquer ...

  6. 解决Vue刷新一瞬间出现样式未加载完或者出现Vue代码问题

    解决Vue刷新一瞬间出现样式未加载完或者出现Vue代码问题: <style> [v-cloak]{ display: none; } </style> <div id=& ...

  7. css实现图片未加载完成时占位显示

    通过css控制,可以实现加载网络图片时,未加载完成的时候显示本地一张占位图,加载完成后显示网络图片: 原理:通过在img标签的after伪元素上添加一张占位图,并且img都设置为position:re ...

  8. JS实现页面加载完毕之前loading提示效果

    1.获取浏览器页面可见高度和宽度 var _PageHeight = document.documentElement.clientHeight, _PageWidth = document.docu ...

  9. JS图片预加载插件

    在开发H5项目中有时候会遇到要加载大量图片的情况,利用预加载技术可以提高用户浏览时的体验. 1)概念:懒加载也叫延迟加载:JS图片延迟加载,延迟加载图片或符合某些条件时才加载某些图片.预加载:提前加载 ...

随机推荐

  1. php之PDO使用【转载】

    <?php $dbh = new PDO('mysql:host=localhost;dbname=access_control', 'root', ''); $dbh->setAttri ...

  2. iOS 最值宏定义

    NSIntegerMax.NSIntegerMin.NSUIntegerMax.MAXFLOAT

  3. php发送get、post请求获取内容的几种方法

    方法1: 用file_get_contents 以get方式获取内容 <?php $url='http://www.domain.com/'; $html = file_get_contents ...

  4. MVVM的架构设计与团队协作 with StoryBoard

    今天写这篇博客是想达到抛砖引玉的作用,想与大家交流一下思想,相互学习,博文中有不足之处还望大家批评指正.本篇博客的内容沿袭以往博客的风格,也是以干货为主,偶尔扯扯咸蛋(哈哈~不好好工作又开始发表博客啦 ...

  5. GUI矩形、椭圆、线、框架

    所有的Swing组件必须由时间调度线程(event dispatch thread)进行配置,线程将鼠标点击和键盘敲击控制转移到用户接口组件.下面的代码片段是事件调度线程中的执行代码: EventQu ...

  6. 17232 伪Acmer的推理(传递闭包)

    17232 伪Acmer的推理 时间限制:1000MS  内存限制:65535K提交次数:0 通过次数:0 收入:0 题型: 编程题   语言: G++;GCC Description 现在正是期末, ...

  7. World Finals 1996 Uva 247 (Floyd求闭包)

    思路:用Floyd求传递闭包. 附:逗号后的空格没看到,WA了好多次…….还有就是强连通分量也可以做,但是对这个题来说太麻烦,而且不方便输出,. 代码如下: #include<iostream& ...

  8. android xml文件中出现如下提醒:This tag and its children can be replaced by one <TextView/> and a compound drawable

    第一个感叹号 是跟你说 让你把Imageview 和textview 结合起来 只用 textview textview有个属性叫  android:drawable...(top/bottom/.. ...

  9. EF5修改edmx表结构保存后不自动更新tt (转)

    http://blog.csdn.net/panderman/article/details/8172968 不知道这算不算一个bug,当你新建一个从数据库生成的edmx时,他能正确的生成所有的tt文 ...

  10. php csv操作

    csv的写入数据: $data = array( array('qq号','登录时间','名称'), array('123456','2012-08-21 15:21:10'.chr(1),'我是来测 ...