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 相关文章推荐
广告切换效果(缓动切换)
May 27 Javascript
JavaScript高级程序设计阅读笔记(六) ECMAScript中的运算符(二)
Feb 27 Javascript
jquery封装的对话框简单实现
Jul 21 Javascript
判断文件是否正在被使用的JS代码
Dec 21 Javascript
jQuery实现鼠标滑过Div层背景变颜色的方法
Feb 17 Javascript
关注jquery技巧提高jquery技能(前端开发必学)
Nov 02 Javascript
如何利用JSHint减少JavaScript的错误
Aug 23 Javascript
JS实现中国公民身份证号码有效性验证
Feb 20 Javascript
laydate时间日历插件使用方法详解
Nov 14 Javascript
JS实现商品橱窗特效
Jan 09 Javascript
基于javascript实现日历功能原理及代码实例
May 07 Javascript
JS定时器如何实现提交成功提示功能
Jun 12 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
mysql 性能的检查和优化方法
2009/06/21 PHP
PHP自定义函数格式化json数据示例
2016/09/14 PHP
PHP实现找出链表中环的入口节点
2018/01/16 PHP
php-fpm添加service服务的例子
2018/04/27 PHP
javascript奇异的arguments分析
2010/10/20 Javascript
javascript中IE浏览器不支持NEW DATE()带参数的解决方法
2012/03/01 Javascript
javascript面向对象入门基础详细介绍
2012/09/05 Javascript
jQuery cdn使用介绍
2013/05/08 Javascript
高性能JavaScript模板引擎实现原理详解
2015/02/05 Javascript
javascript高级编程之函数表达式 递归和闭包函数
2015/11/29 Javascript
json定义及jquery操作json的方法
2016/09/29 Javascript
Bootstrap页面标题Page Header的实现方法
2017/03/22 Javascript
js通过Date对象实现倒计时动画效果
2017/10/27 Javascript
angularjs的单选框+ng-repeat的实现方法
2018/09/12 Javascript
详解js动态获取浏览器或页面等容器的宽高
2019/03/13 Javascript
jqGrid表格底部汇总、合计行footerrow处理
2019/08/21 Javascript
JS判断浏览器类型与操作系统的方法分析
2020/04/30 Javascript
js重写alert事件(避免alert弹框标题出现网址)
2020/12/04 Javascript
Python实现的监测服务器硬盘使用率脚本分享
2014/11/07 Python
Python标准库之多进程(multiprocessing包)介绍
2014/11/25 Python
python生成以及打开json、csv和txt文件的实例
2018/11/16 Python
python爬虫的一个常见简单js反爬详解
2019/07/09 Python
python针对mysql数据库的连接、查询、更新、删除操作示例
2019/09/11 Python
使用pytorch完成kaggle猫狗图像识别方式
2020/01/10 Python
Python中实现输入一个整数的案例
2020/05/03 Python
python如何实现word批量转HTML
2020/09/30 Python
介绍CSS3使用技巧5个
2009/04/02 HTML / CSS
致跳高运动员广播稿
2014/01/13 职场文书
装修五一活动策划案
2014/01/23 职场文书
网站美工岗位职责
2014/04/02 职场文书
北京奥运会主题口号
2014/06/13 职场文书
2014年维稳工作总结
2014/11/18 职场文书
2014年社区宣传工作总结
2014/12/02 职场文书
2014年中职班主任工作总结
2014/12/16 职场文书
2014年优秀班主任工作总结
2014/12/16 职场文书
学生自我评语
2015/01/04 职场文书