JavaScript实现判断图片是否加载完成的3种方法整理
作者:junjie 发布时间:2024-04-23 09:24:26
标签:JavaScript,判断,图片,加载完成
有时候我们在前端开发工作中为了获取图片的信息,需要在图片加载完成后才可以正确的获取到图片的大小尺寸,并且执行相应的回调函数使图片产生某种显示效果。本文主要整理了几种常见的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库的支持,代码需要放置到需要操作元素的下方。


猜你喜欢
- <script language="vbscript" runat="s
- 随着 web 发展,前端应用变得越来越复杂,基于后端的 javascript(Node.js) 也开始崭露头角,此时 javascript
- 涉及到的函数为import matplotlib.pyplot as pltfrom skimage import measure, col
- 本文实例讲述了js中火星坐标、百度坐标、WGS84坐标转换实现方法。分享给大家供大家参考,具体如下://定义一些常量var x_PI = 3
- 问题分析为了提高系统的吞吐量,很多环节下对于数据库的写入是多线程,甚至是多进程的。为了保证写入成功,在很多情况下需要多次重试。这就会带来一个
- truncate table TestTable EXEC sp_configure 'show advanced options&
- fetchone() 返回单个的元组,也就是一条记录(row),如果没有结果 则返回 Nonefetchall() 返回多个元组,即返回多个
- 一、序言本文承接[Mybatis缓存体系探究],提供基于MybatisPlus技术可用于生产环境下的二级缓存解决方案。1、前置条件掌握MyB
- 我们在编写asp程序时经常会使用到这个功能,一般我们这样判断如:if a="" then ,而这个函数考虑的就比较全面了
- 1.首先到jetbrains下载专业版 https://www.jetbrains.com/pycharm/download/#sectio
- 在PC端登录公司的后台管理系统或在手机上登录某个APP时,经常会发现登录成功后,返回参数中会包含token,它的值为一段较长的字符串,而后续
- SQL 多条件查询以后我们做多条件查询,一种是排列结合,另一种是动态拼接SQL如:我们要有两个条件,一个日期@addDate,一个是@nam
- 本文实例讲述了JavaScript设计模式之原型模式。分享给大家供大家参考,具体如下:从设计模式的角度讲,原型模式是用于创建对象的一种模式,
- #!/usr/bin/env python##-*- coding: utf-8 -*- import os print
- 详解Golang 与python中的字符串反转在go中,需要用rune来处理,因为涉及到中文或者一些字符ASCII编码大于255的。func
- vue-loader和webpack项目配置及npm错误学习vue的同学都知道,想要生成一个vue项目,使用vue-cli脚手架工具直接生成
- 系统自带模块(库)```cppimport retarget = 'abc1234xyz're.search('(\
- 方法一:psutil模块#!usr/bin/env python# -*- coding: utf-8 -*-import socketim
- 使用 OpenAI API 和相应的 Python SDK 试用 GPT-3 语言模型。介绍在本文中,我们将使用 GPT-3。我将向您展示如
- 如何优雅地解析命令行选项随着我们编程经验的增长,对命令行的熟悉程度日渐加深,想来很多人会渐渐地体会到使用命令行带来的高效率。自然而然地,我们