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 相关文章推荐
jQuery版Tab标签切换
Mar 16 Javascript
js中对象的声明方式以及数组的一些用法示例
Dec 11 Javascript
jquery选择器之属性过滤选择器详解
Jan 27 Javascript
js document.write()使用介绍
Feb 21 Javascript
JS小游戏之象棋暗棋源码详解
Sep 25 Javascript
AngularJS递归指令实现Tree View效果示例
Nov 07 Javascript
JavaScript实现的XML与JSON互转功能详解
Feb 16 Javascript
jquery仿ps颜色拾取功能
Mar 08 Javascript
vue.js 使用axios实现下载功能的示例
Mar 05 Javascript
Vue ElementUi同时校验多个表单(巧用new promise)
Jun 06 Javascript
原生js实现获取form表单数据代码实例
Mar 27 Javascript
在vue-cli 3中给stylus、sass样式传入共享的全局变量
Aug 12 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实现utf-8和GB2312编码相互转换函数代码
2013/02/07 PHP
PHP的Yii框架中行为的定义与绑定方法讲解
2016/03/18 PHP
PHP正则获取页面所有图片地址
2016/03/23 PHP
ajaxControlToolkit AutoCompleteExtender的用法
2008/10/30 Javascript
jquery ajax提交表单数据的两种方式
2009/11/24 Javascript
原生Js实现元素渐隐/渐现(原理为修改元素的css透明度)
2013/06/24 Javascript
修复bash漏洞的shell脚本分享
2014/12/31 Javascript
原生js实现倒计时功能(多种格式调用)
2017/01/12 Javascript
Vue.js学习之计算属性
2017/01/22 Javascript
js利用for in循环获取 一个对象的所有属性以及值的实例
2017/03/30 Javascript
详解angularJs模块ui-router之状态嵌套和视图嵌套
2017/04/28 Javascript
javascript 封装Date日期类实例详解
2017/05/28 Javascript
JavaScript闭包和回调详解
2017/08/09 Javascript
react 父组件与子组件之间的值传递的方法
2017/09/14 Javascript
在JavaScript中使用严格模式(Strict Mode)
2019/06/13 Javascript
解决layui 表单元素radio不显示渲染的问题
2019/09/04 Javascript
js canvas实现五子棋小游戏
2021/01/22 Javascript
微信小程序组件生命周期的踩坑记录
2021/03/03 Javascript
跟老齐学Python之Python安装
2014/09/12 Python
Python装饰器入门学习教程(九步学习)
2016/01/28 Python
简单谈谈Python的pycurl模块
2018/04/07 Python
python如何生成网页验证码
2018/07/28 Python
解决python tkinter界面卡死的问题
2019/07/17 Python
python 监测内存和cpu的使用率实例
2019/11/28 Python
Python tkinter和exe打包的方法
2020/02/05 Python
Css3圆角边框制作代码
2015/11/18 HTML / CSS
详解利用css3的var()实现运行时改变scss的变量值
2021/03/02 HTML / CSS
详解通过变换矩阵实现canvas的缩放功能
2019/01/14 HTML / CSS
正宗的日本零食和糖果订阅盒:Bokksu
2019/11/21 全球购物
霸王洗发水广告词
2014/03/14 职场文书
教师节促销方案
2014/03/22 职场文书
中学生旷课检讨书模板
2014/10/08 职场文书
社团招新宣传语
2015/07/13 职场文书
导游词之杭州岳王庙
2019/11/13 职场文书
导游词之神仙居景区
2019/11/15 职场文书
MySQL中distinct与group by之间的性能进行比较
2021/05/26 MySQL