javascript判断图片是否加载完成方法整理

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

onload方法

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

<img class="pic1" οnlοad="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库的支持,代码需要放置到需要操作元素的下方。

转载于:https://www.cnblogs.com/1rui/p/5509848.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/418491.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端学习(1939)vue之电商管理系统电商系统之完成全部功能

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vue import Welcome from ./components/Welcome.vue import Users from ./components/user/Users.vue import Right fr…

response 中OutputStream和PrintWriter区别

https://blog.csdn.net/feipeng8848/article/details/56286399 https://blog.csdn.net/lhanson/article/details/83893999 https://blog.csdn.net/qq_16605855/article/details/78260355 public class RenderUtil {/*** 渲染json对象*/public static void renderJson(HttpSe…

为PHP7安装Windows Server 2012 R2过程记录

因为要安装php-7.0.6-Win32-VC14-x64&#xff0c;需要先安装vcredist2015_x64_14.0.23026.0。 之前安装了Windows Server 2012 R2后&#xff0c;一直无法成功安装vcredist2015_x64_14.0.23026.0。 据说是因为没有打几个补丁。但是一直都打不上&#xff0c;索性直接安装了个带补…

《学习OpenCV》课后习题解答1

题目&#xff1a;&#xff08;P104&#xff09; 下面这个练习是帮助掌握矩阵类型。创造一个三通道二维矩阵&#xff0c;字节类型&#xff0c;大小为100*100&#xff0c;并设置所有数值为0。 a.在矩阵中使用cvCircle( CvArr* img, CvPoint center, int radius, CvScalar colo…

通用的MIME类型:application/octet-stream

https://www.cnblogs.com/xiaohi/p/6550133.html

Java开发神器Lombok使用详解

https://blog.csdn.net/wo541075754/article/details/103867617?depth_1-utm_sourcedistribute.pc_feed.none-task&request_id&utm_sourcedistribute.pc_feed.none-task

Mac上更新Ruby

1、安装 RVM RVM:Ruby Version Manager,Ruby版本管理器&#xff0c;包括Ruby的版本管理和Gem库管理(gemset)$ curl -L get.rvm.io | bash -s stable 测试是否安装正常 rvm -v 2、用RVM升级Ruby #查看当前ruby版本 $ ruby -v ruby 2.0.0 #列出已知的ruby版本 $ rvm list…

前端学习(1943)vue之电商管理系统电商系统之通过路由加载商品分类

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vue import Welcome from ./components/Welcome.vue import Users from ./components/user/Users.vue import Right fr…

PC端支付宝支付接口的调用(沙箱环境测试最全文档)

https://blog.csdn.net/qq_43591363/article/details/104591261?depth_1-utm_sourcedistribute.pc_relevant.none-task&utm_sourcedistribute.pc_relevant.none-task

漫谈C++:良好的编程习惯与编程要点

以良好的方式编写C class 假设现在我们要实现一个复数类complex&#xff0c;在类的实现过程中探索良好的编程习惯。 ① Header(头文件)中的防卫式声明complex.h: # ifndef __COMPLEX__ # define __COMPLEX__ class complex {} # endif 防止头文件的内容被多次包含。 ② 把数据…

前端学习(1944)vue之电商管理系统电商系统之绘制分类组件的基本结构

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vue import Welcome from ./components/Welcome.vue import Users from ./components/user/Users.vue import Right fr…

jqprint控件使用

https://www.cnblogs.com/daimaxuejia/p/9553264.html

iOS之多线程

1、多线程简介&#xff1a;用户使用APP的时候如果每个操作都会等待好长的时间&#xff0c;才能得到程序的响应&#xff0c;这就影响了用户体验&#xff0c;为了减少用户的等待时间&#xff0c;我们可以使用多线程&#xff1a;开辟出子线程去处理一些比较耗时的操作&#xff08;…

前端学习(1945)vue之电商管理系统电商系统之调用api获取数据

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vue import Welcome from ./components/Welcome.vue import Users from ./components/user/Users.vue import Right fr…

前端学习(1946)vue之电商管理系统电商系统之初步使用vue-table-with-tree

目录结构 router.js import Vue from vue import Router from vue-router import Login from ./components/Login.vue import Home from ./components/Home.vue import Welcome from ./components/Welcome.vue import Users from ./components/user/Users.vue import Right fr…

Java知识体系最强总结(2020版)

https://blog.csdn.net/thinkwon/article/details/103592572#comments

SQLHelper帮助类

using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Collections;using System.Data.SqlClient;/// <summary>/// 数据库的通用访问代码/// 此类为抽象类&#xff0c;不允许实例化&#xff0c;在应用时…