`
wbj0110
  • 浏览: 1602781 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

jquery实现 图片延迟加载

阅读更多

图片延迟加载的大致的原理是,对于图片标签不是把图片的路径指定到src属性上,src属性指定一个非常小的空白图片,真正的图片地址设置到一个自定义的属性上,比如file,这样img标签就是这样:<img src="blank.jpg" file="00xx.jpg"/>或者背景直接把一张小的空白图作为背景色。

我的设计思想采用第二种:

1:先把刷新的小图片 作为图片的背景图片,根据onload判断图片是否加载完成onload官方手册的说明:

 

如果绑定给window对象,则会在所有内容加载后触发,包括窗口,框架,对象和图像。如果绑定在元素上,则当元素的内容加载完毕后触发。

注意:只有当在这个元素完全加载完之前绑定load的处理函数,才会在他加载完后触发。如果之后再绑定就永远不会触发了。所以不要在$(document).ready()里绑定load事件,因为jQuery会在所有DOM加载完成后再绑定load事件。

 

2:error可以判断是否图片失效或者url失效:error官方手册说明

 

对于error事件,没有一个公众的标准。在大多数浏览器中,当页面的JavaScript发生错误时,window对象会触发error事件;当图像的src属性无效时,比如文件不存在或者图像数据错误时,也会触发图像对象的error事件。 备注ie下失效,所以可以在最后一部全部清除背景图片

 

3:最后在执行清除背景图片等等善后工作

 

 

[html] view plaincopy
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  2.   
  3. <html xmlns="http://www.w3.org/1999/xhtml" >  
  4.   
  5. <head>  
  6.   
  7.     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />  
  8.   
  9.     <title>jQuery加载图片</title>  
  10.   
  11.     <style type="text/css">  
  12.   
  13.         h1{color:Green;}  
  14.   
  15.         body{ background-color:#EEEEEE ; }  
  16.   
  17.         #load{border:solid 1px blue; width:500px; height:333px; overflow:hidden;}  
  18.   
  19.         .loading{background: url(http://www.jquery001.com/images/gif/al_loading.gif) no-repeat center center;}  
  20.   
  21.     </style>  
  22.   
  23.     <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>  
  24.   
  25.     <script type="text/javascript">  
  26.   
  27.         $(document).ready(function() {  
  28.             var img = new Image();  
  29.                   
  30.             //图片加载加载后执行  
  31.             $("img").load(function() {  
  32.                   
  33.                 //图片默认隐藏  
  34.                   
  35.                 $(this).hide();  
  36.   
  37.                 //移除小动画  
  38.                   
  39.         $(".loading").removeClass("loading").append(this);  
  40.   
  41.                      //使用fadeIn特效  
  42.   
  43.                  $(this).fadeIn("5000");  
  44.   
  45.             })  
  46.               
  47.             //加载失败时的处理  
  48.             $("img").error(function() {  
  49.             <!--$("img").replaceWith("没有图片");-->  
  50.             $(this).attr("src", "http://www.blogkid.cn/wp-content/uploads/2008/04/memcached_shell_2.JPG");  
  51.       
  52.   
  53.             })  
  54.   
  55.             //最后设置src  
  56.   
  57.            <!-- .attr("src", "http://www.jquery001.com/images/demo/2010/anyixuan.jpg");-->  
  58.                 <!--$(".loading").removeClass("loading")-->  
  59.         });  
  60.   
  61.     </script>  
  62.   
  63. </head>  
  64.   
  65. <body>  
  66.   
  67.     <h1>jQuery加载图片</h1>  
  68.   
  69.     <div id="load" class="loading"> <img src="http://www.moredoo.com/Mobile/share/124650442011year6month7day23hour57min14sec.jpg" style=" height:auto" id='uu1'>  
  70.     <br />  
  71.     </div>  
  72.       
  73. <img src="http://www.jquery001.com/images/demo/2010/anyixuan.jpg" style="  float:right" id='uu1'>  
  74. </body>  
  75.   
  76. </html>  

常用的几张加载延时进度条 可以作为收藏起来

 

分享到:
评论

相关推荐

    jquery实现图片延迟加载过程.rar

    下面是一个简单的jQuery图片延迟加载实现步骤: 1. **设置数据源**:首先,将图片的实际URL存储在一个"data-src"属性中,而HTML的"src"属性则设置为一个占位符,如空字符串或小尺寸的预加载图片。 ```html ``` 2...

    jquery实现图片延迟加载和ajax方式加载页面.rar

    本资源“jquery实现图片延迟加载和ajax方式加载页面.rar”聚焦于两个核心概念:图片延迟加载(Lazy Loading)和Ajax页面加载。 **图片延迟加载**是一种优化网页性能的技术,它避免了一次性加载所有图片导致的页面...

    jquery实现图片延迟加载和ajax方式加载页面

    "jQuery实现图片延迟加载和Ajax方式加载页面"是一种优化策略,旨在解决页面加载速度慢的问题,特别是对于那些资源密集型的网站。 首先,让我们深入了解一下**图片延迟加载(Lazy Loading)**的概念。在传统的网页...

    jquery实现图片延迟加载过程

    晓甜雨之前给大家也推荐过一款图片延迟加载特效,原文链接如下:jquery实现图片延迟加载和ajax方式加载页面 今天再给大家介绍一款,两者的区别在于前者有个加载的过程,后者则是渐变显示,两者的区别再此,晓甜雨...

    jquery图片延迟加载

    为了解决这个问题,开发人员引入了“图片延迟加载”技术,jQuery作为一款广泛使用的JavaScript库,提供了实现这一功能的强大工具。本文将深入探讨jQuery图片延迟加载的概念、优势以及实现方法。 **一、什么是图片...

    jquery 图片延迟加载

    ### 三、jQuery延迟加载插件使用示例 在提供的`LazyLoadDemo`压缩包中,我们可以看到一个简单的示例。这个示例可能包含以下文件: - `index.html`: 包含HTML结构,使用`data-src`属性标记待延迟加载的图片。 - `...

    基于jQuery的图片延迟加载功能的实现

    ### 基于jQuery的图片延迟加载功能的实现 #### 一、引言 随着Web 2.0技术的发展,JavaScript框架得到了广泛应用,不仅提升了Web应用程序的性能,还极大改善了用户体验。其中,图片延迟加载技术是一种有效提高网页...

    jQuery网页图片延迟加载代码.zip

    本压缩包"jQuery网页图片延迟加载代码.zip"包含了一个基于jQuery-1.8.3.min.js的延迟加载图片的解决方案。这个解决方案能够帮助开发者在不牺牲用户体验的情况下,有效地管理网页中的大量图片资源,降低首次页面加载...

    jquery延迟加载图片

    **jQuery延迟加载图片技术详解** 在网页设计中,图片往往是页面加载速度的瓶颈。为了提高网页的加载效率和用户体验,开发者通常会采用延迟加载(Lazy Loading)技术,尤其是在图片众多的场景下。jQuery库提供了简单...

    jquery Loading图片延迟加载特效.zip

    在实际应用中,jQuery延迟加载图片的实现原理如下: 1. **图片占位符**:首先,HTML中使用较小的占位符图片或纯色背景来代替真实的大图。 2. **数据属性**:给图片元素添加"data-src"等自定义数据属性,存储大图的...

    JQuery图片延迟加载效果

    **二、jQuery延迟加载实现步骤** 1. **HTML结构**:首先,我们需要在HTML中为图片添加`data-src`属性,而不是`src`属性,因为`src`属性会立即加载图片。例如: ```html ``` 2. **CSS隐藏图片**:为了避免在图片...

    jQuery滚动图片延迟加载插件【一个大神写的】

    本文将深入探讨一个由大神编写的jQuery滚动图片延迟加载插件,以及其背后的原理和实现方式。 首先,理解延迟加载的核心概念。当用户滚动到图片所在区域时,图片才开始加载,而不是在页面一开始就一次性加载所有图片...

    jquery图片预加载

    总的来说,jQuery图片预加载技术通过提前加载图片资源,提高了网页的响应速度和用户体验。正确理解和应用预加载策略,是现代网页开发中的重要技能。在实际项目中,还需要根据具体需求和性能考虑,灵活选择和优化预...

    jquery图片预加载延迟加载

    使用jQuery实现延迟加载,可以借助插件如`jQuery_lazyload`: ```javascript $(document).ready(function() { $("img.lazy").lazyload({ effect: "fadeIn" }); }); ``` 这里,`img.lazy`是具有延迟加载特性的...

Global site tag (gtag.js) - Google Analytics