JS判断图片是否加载完成方法汇总(最新版)


Posted in Javascript onMay 13, 2016

有时需要获取图片的尺寸,这需要在图片加载完成以后才可以。下面小编给大家整理了几种关于JS判断图片是否加载完成方法汇总,一起看看吧。

一、load事件

<script type="text/javascript">
$('img').onload = function() {
//code
}
</script>

优点:简单易用,不影响HTML代码。

缺点:只能指定一个元素,javascipt代码必须置于图片元素的下方

二、jquery方法

<script type="text/javascript">
$(function(){
$('.pic1').each(function() {
$(this).load(function(){
$(this).fadeIn();
});
});
})
</script>

注意,不要在$(document).ready()里绑定load事件。

优点:可以批量绑定元素事件,并且不影响HTML代码内容
缺点:需要jquery库的支持,代码需要放置到需要操作元素的下方。

三、readystatechange事件

<!DOCTYPE HTML>
<html> 
<head> 
<meta charset="utf-">
<title>img - readystatechange event</title>
</head> 
<body>
<img id="img" src="http://pic.win.com/wallpaper/f/cbbaea.jpg">
<p id="p">loading...</p>
<script type="text/javascript">
img.onreadystatechange = function() {
if(img.readyState=="complete"||img.readyState=="loaded"){ 
p.innerHTML = 'readystatechange:loaded'
}
}
</script>
</body>
</html>

readyState为complete和loaded则表明图片已经加载完毕。测试IE6-IE10支持该事件,其它浏览器不支持。

四、img的complete属性

<!DOCTYPE HTML>
<html> 
<head> 
<meta charset="utf-8">
<title>img - complete attribute</title>
</head> 
<body>
<img id="img1" src="http://pic1.win4000.com/wallpaper/f/51c3bb99a21ea.jpg">
<p id="p1">loading...</p>
<script type="text/javascript">
function imgLoad(img, callback) {
var timer = setInterval(function() {
if (img.complete) {
callback(img)
clearInterval(timer)
}
}, 50)
}
imgLoad(img1, function() {
p1.innerHTML('加载完毕')
})
</script>
</body>
</html>

轮询不断监测img的complete属性,如果为true则表明图片已经加载完毕,停止轮询。该属性所有浏览器都支持。

JS判断图片是否加载完成方法汇总(最新版)

以上内容是小编给大家介绍的JS判断图片是否加载完成方法汇总,希望对大家有所帮助,同时也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
动态加载外部javascript文件的函数代码分享
Jul 28 Javascript
brook javascript框架介绍
Oct 10 Javascript
js动画效果制件让图片组成动画代码分享
Jan 14 Javascript
JavaScript中this关键词的使用技巧、工作原理以及注意事项
May 20 Javascript
jQuery中[attribute^=value]选择器用法实例
Dec 31 Javascript
Sortable.js拖拽排序使用方法解析
Nov 04 Javascript
JS中如何实现复选框全选功能
Dec 19 Javascript
AngularJS学习笔记之表单验证功能实例详解
Jul 06 Javascript
关于vue.js发布后路径引用的问题解决
Aug 15 Javascript
jquery学习笔记之无new构建详解
Dec 07 jQuery
使用Bootstrap4 + Vue2实现分页查询的示例代码
Dec 21 Javascript
springboot+vue+对接支付宝接口+二维码扫描支付功能(沙箱环境)
Oct 15 Javascript
BootStrap扔进Django里的方法详解
May 13 #Javascript
JavaScript重载函数实例剖析
May 13 #Javascript
JS加载iFrame出现空白问题的解决办法
May 13 #Javascript
基于JS判断iframe是否加载成功的方法(多种浏览器)
May 13 #Javascript
JS iFrame加载慢怎么解决
May 13 #Javascript
基于JS实现的笛卡尔乘积之商品发布
May 13 #Javascript
基于jQuery倒计时插件实现团购秒杀效果
May 13 #Javascript
You might like
黑夜路人出的几道php笔试题
2009/08/04 PHP
PHP多文件上传类实例
2015/03/07 PHP
PHP获取数据库表中的数据插入新的表再原删除数据方法
2018/10/12 PHP
JS 动态加载脚本的4种方法
2009/05/05 Javascript
11款新鲜的jQuery插件[附所有demo下载]
2011/01/24 Javascript
基于jquery的多功能软键盘插件
2012/07/25 Javascript
Ext JS添加子组件的误区探讨
2013/06/28 Javascript
jquery()函数的三种语法介绍
2013/10/09 Javascript
JavaScript实现多维数组的方法
2013/11/20 Javascript
JavaScript判断文件上传类型的方法
2014/09/02 Javascript
jquery实现垂直和水平菜单导航栏
2020/08/27 Javascript
js判断checkbox是否选中个数的方法(超简单)
2016/08/19 Javascript
详解Vue 动态组件与全局事件绑定总结
2018/11/11 Javascript
Vue实现base64编码图片间的切换功能
2019/12/04 Javascript
[01:11]辉夜杯战队访谈宣传片—CDEC.Y
2015/12/26 DOTA
python网络编程之TCP通信实例和socketserver框架使用例子
2014/04/25 Python
python基于windows平台锁定键盘输入的方法
2015/03/05 Python
Python全局变量用法实例分析
2016/07/19 Python
浅谈python内置变量-reversed(seq)
2017/06/21 Python
python中将函数赋值给变量时需要注意的一些问题
2017/08/18 Python
Python实现句子翻译功能
2017/11/14 Python
详解Tensorflow数据读取有三种方式(next_batch)
2018/02/01 Python
对Python 简单串口收发GUI界面的实例详解
2019/06/12 Python
python科学计算之narray对象用法
2019/11/25 Python
OSPREY LONDON官网:英国本土皮具品牌
2019/05/31 全球购物
法国购买隐形眼镜和眼镜网站:Optical Center
2019/10/08 全球购物
英国复古服装购物网站:Collectif
2019/10/30 全球购物
建筑工地标语
2014/06/18 职场文书
2014年个人工作总结模板
2014/12/15 职场文书
公司承诺函范文
2015/01/21 职场文书
七一建党节慰问信
2015/02/14 职场文书
运动会入场词
2015/07/18 职场文书
2015元旦感言
2015/12/09 职场文书
《鸡兔同笼》教学反思
2016/02/19 职场文书
《工作是最好的修行》读后感3篇
2019/12/13 职场文书
GitHub上77.9K的Axios项目有哪些值得借鉴的地方详析
2021/06/15 Javascript