jquery判断图片是否加载完毕

来源: <http://www.2cto.com/kf/201409/331234.html>

利用图片没有加载完成的时候,宽高为0。我们很容易判断图片的一个加载情况。如下:

思路:判断图片高度 --> 存在高度等于0 --> 定时500毫秒再次扫描 --> 直到全部不等于0 -->进行下一步处理

注意:引入jquery.js

 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 2 <html>
 3 <head>
 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 5 <title>load event</title>
 6 <script language="javascript" src="jquery.js"></script>
 7 </head>
 8 <body>
 9 <img src="http://home.baidu.com/resource/r/home/img/logo-yy.gif" alt="" class=‘cover‘/>
10 </body>
11 <script>
12 var t_img; // 定时器
13 var isLoad = true; // 控制变量
14
15 // 判断图片加载状况,加载完成后回调
16 isImgLoad(function(){
17 // 加载完成
18 //document.write(‘图片加载完成!‘);
19 alert(‘图片加载完成‘);
20 });
21
22 // 判断图片加载的函数
23 function isImgLoad(callback){
24 // 注意我的图片类名都是cover,因为我只需要处理cover。其它图片可以不管。
25 // 查找所有封面图,迭代处理
26 $(‘.cover‘).each(function(){
27 // 找到为0就将isLoad设为false,并退出each
28 if(this.height === 0){
29 isLoad = false;
30 return false;
31 }
32 });
33 // 为true,没有发现为0的。加载完毕
34 if(isLoad){
35 clearTimeout(t_img); // 清除定时器
36 // 回调函数
37 callback();
38 // 为false,因为找到了没有加载完成的图,将调用定时器递归
39 }else{
40 isLoad = true;
41 t_img = setTimeout(function(){
42 isImgLoad(callback); // 递归扫描
43 },500); // 我这里设置的是500毫秒就扫描一次,可以自己调整
44 }
45 }
46 </script>
47 </html>

需要注意的是,该方法不能判断图片是否存在.即使图片不存在,img在请求完成后,会有一个不为0的宽高.

时间: 2024-12-26 06:56:57

jquery判断图片是否加载完毕的相关文章

javaScript &amp; jquery完美判断图片是否加载完毕

好久没写东西了,正好最近因为工作需要,写了一个瀑布流异步加载的程序. 今天就不谈瀑布流,来谈一下关于load的问题. ------------------------------------------------------------- 众所周知,常见瀑布流当鼠标滚动到浏览器底部的时候,就会发起一个ajax的请求.在服务端生成item列表后,通过 js append到相应的div里边. 看起来很简单的样子,关键问题就出在图片的加载问题上,图片一般都放在服务器上,通过http下载到客户端. 例

jquery判断图像是否加载完毕【解决读取缓存不调用load方法的问题】

$("img").one("load", function() {  // do stuff}).each(function() {  if(this.complete) $(this).load();});

JavaScript判断图片是否加载完成的三种方式---转

JavaScript判断图片是否加载完成的三种方式 有时需要获取图片的尺寸,这需要在图片加载完成以后才可以.有三种方式实现,下面一一介绍. 一.load事件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 <!DOCTYPE HTML> <html> <head>     <meta charset="utf-8">     <title>img - load event</title>

JavaScript实现判断图片是否加载完成的3种方法整理

JavaScript实现判断图片是否加载完成的3种方法整理 有时候我们在前端开发工作中为了获取图片的信息,需要在图片加载完成后才可以正确的获取到图片的大小尺寸,并且执行相应的回调函数使图片产生某种显示效果.本文主要整理了几种常见的javascipt判断图片加载完成时的方法,并通过代码与实际应用相结合进行解释与说明. onload方法 通过向img标签添加onload属性,并填入相应的函数来执行后续的javascipt代码.如下代码例子中img元素默认是不显示的,通过onload判断加载完成后再将

jquery实现图片预加载

使用jquery实现图片预加载提高页面加载速度和用户体,本就为大家详细分析jquery图片预加载的实现原理. 什么时候使用图片预加载? 如果页面使用了很多不是最初加载便可见的图片,有必要进行预加载: $.preloadImages = function () { for (var i = 0; i < arguments.length; i++) { $('img').attr('src', arguments[i]); }};$.preloadImages('img/hover-on.png'

使用JavaScript判断图片是否加载完成的三种实现方式

有时需要获取图片的尺寸,这需要在图片加载完成以后才可以.有三种方式实现,下面一一介绍. 一.load事件 <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>img - load event</title> </head> <body> <img id="img1" src="http:/

JavaScript判断图片是否加载完成

一.load事件 <!DOCTYPE HTML><html> <head>     <meta charset="utf-8">    <title>img - load event</title></head> <body>    <img id="img1" src="http://pic1.win4000.com/wallpaper/f/51c3bb

JavaScript判断图片是否加载完成的三种方式

一.load事件 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 <!DOCTYPE HTML> <html> <head>     <meta charset="utf-8">     <title>img - load event</title> </head> <body>     <img id="img1" src=&qu

js获取图片是否加载完毕

Snandy If you cannot hear the sound of the genuine in you, you will all of your life spend your days on the ends of strings that somebody else pulls. JavaScript判断图片是否加载完成的三种方式 有时需要获取图片的尺寸,这需要在图片加载完成以后才可以.有三种方式实现,下面一一介绍. 一.load事件 <!DOCTYPE HTML> <