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


Posted in Javascript onMarch 13, 2015

有时候我们在前端开发工作中为了获取图片的信息,需要在图片加载完成后才可以正确的获取到图片的大小尺寸,并且执行相应的回调函数使图片产生某种显示效果。本文主要整理了几种常见的javascipt判断图片加载完成时的方法,并通过代码与实际应用相结合进行解释与说明。

onload方法

通过向img标签添加onload属性,并填入相应的函数来执行后续的javascipt代码。如下代码例子中img元素默认是不显示的,通过onload判断加载完成后再将图片显示出来。

<img class="pic1" onload="get(this)" src="..." style='display:none' />

 

<script type="text/javascript">

function get(ts){

 ts.style.display = 'block';  //显示图片

}

</script>

优点:可以将javascript代码部分放置于页面的任何部分加载,并且可以用于多数任意图片上。使用比较简单,易理解。

缺点:必须在每个标签上都贴上onlaod属性,在某些无法直接操作HTML代码,或者需要代码精简的情况下不适用

javascipt原生方法

选取指定ID的图片,通过onload指定回调方法,在图片加载完成后弹出“图片加载已完成”字样提示。

<img id="pic1" src="..." />

 

<script language="JavaScript">

    document.getElementById("pic1").onload = function () {

        alert("图片加载已完成");

    }

</script>

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

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

jquery方法

为每个class为pic1的图片元素绑定事件,通过jquery的load方法,将元素渐现出来。

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

<script type="text/javascript">

$(function(){

 $('.pic1').each(function() {

  $(this).load(function(){

   $(this).fadeIn();

  });

    });

})

</script>

优点:可以批量绑定元素事件,并且不影响HTML代码内容

缺点:需要jquery库的支持,代码需要放置到需要操作元素的下方。

Javascript 相关文章推荐
jQuery 使用手册(三)
Sep 23 Javascript
使用原生js封装webapp滑动效果(惯性滑动、滑动回弹)
May 06 Javascript
使用jquery菜单插件HoverTree仿京东无限级菜单
Dec 18 Javascript
JS实现密码框根据焦点的获取与失去控制文字的消失与显示效果
Nov 26 Javascript
javascript实现全角转半角的方法
Jan 23 Javascript
Bootstrap表格和栅格分页实例详解
May 20 Javascript
微信js-sdk上传与下载图片接口用法示例
Oct 12 Javascript
BootStrap学习笔记之nav导航栏和面包屑导航
Jan 03 Javascript
layui导航栏实现代码
May 19 Javascript
基于js 字符串indexof与search方法的区别(详解)
Dec 04 Javascript
es6数值的扩展方法
Mar 11 Javascript
解决layui-open关闭自身窗口的问题
Sep 10 Javascript
JavaScript检查弹出窗口是否被阻拦的方法技巧
Mar 13 #Javascript
JavaScript中常用的六种互动方法示例
Mar 13 #Javascript
jQuery.position()方法获取不到值的安全替换方法
Mar 13 #Javascript
检测一个函数是否是JavaScript原生函数的小技巧
Mar 13 #Javascript
DOM操作一些常用的属性汇总
Mar 13 #Javascript
JavaScript获取页面上被选中文字的方法技巧
Mar 13 #Javascript
jQuery源码分析之Callbacks详解
Mar 13 #Javascript
You might like
用php或asp创建网页桌面快捷方式的代码
2010/03/23 PHP
延长phpmyadmin登录时间的方法
2011/02/06 PHP
php设计模式之命令模式的应用详解
2013/05/21 PHP
php网站被挂木马后的修复方法总结
2014/11/06 PHP
PHP中SSO Cookie登录分析和实现
2015/11/06 PHP
javascript 控制弹出窗口
2007/04/10 Javascript
Visual Studio中的jQuery智能提示设置方法
2010/03/27 Javascript
基于JavaScript实现 获取鼠标点击位置坐标的方法
2013/04/12 Javascript
javascript动态添加、修改、删除对象的属性与方法详解
2014/01/27 Javascript
AngularJS动态添加数据并删除的实例
2018/02/27 Javascript
webpack本地开发环境无法用IP访问的解决方法
2018/03/20 Javascript
剖析Angular Component的源码示例
2018/03/23 Javascript
vue插槽slot的理解和使用方法
2019/04/03 Javascript
vue实现购物车的监听
2020/04/20 Javascript
Python控制多进程与多线程并发数总结
2016/10/26 Python
Python实现随机选择元素功能
2017/09/14 Python
基于Django contrib Comments 评论模块(详解)
2017/12/08 Python
详解用python实现简单的遗传算法
2018/01/02 Python
Python基于递归算法求最小公倍数和最大公约数示例
2018/07/27 Python
Python OpenCV读取png图像转成jpg图像存储的方法
2018/10/28 Python
python解压TAR文件至指定文件夹的实例
2019/06/10 Python
Python hexstring-list-str之间的转换方法
2019/06/12 Python
Python如何实现FTP功能
2020/05/28 Python
浅谈keras使用预训练模型vgg16分类,损失和准确度不变
2020/07/02 Python
将HTML5 Canvas的内容保存为图片借助toDataURL实现
2013/05/20 HTML / CSS
美国电视购物HSN官网:HSN
2016/09/07 全球购物
荷兰牛仔裤网上商店:Jeans Centre
2018/04/03 全球购物
高职助产应届生自荐信
2013/09/24 职场文书
小学生读书活动总结
2014/06/30 职场文书
电子专业自荐信
2014/07/01 职场文书
商场促销活动总结
2014/07/10 职场文书
2014年安全管理工作总结
2014/12/01 职场文书
励志语录:你若不勇敢,谁替你坚强
2019/11/08 职场文书
数据库连接池
2021/04/06 MySQL
详解 TypeScript 枚举类型
2021/11/02 Javascript
Java版 单机五子棋
2022/05/04 Java/Android