JavaScript 中的图像加载事件
本文将讨论如何在 JavaScript 中处理 .onload 事件。 我们将学习如何在上传图像后使用 JavaScript 创建警告框。
我们还将了解如何通过创建警告框使用 JavaScript 检查图像是否已加载。
JavaScript 中的 .onload 事件
.onload 事件仅在加载对象时发生。 .onload 事件主要用在元素主体中,一旦网页加载了所有内容(包括图像、脚本、CSS 文件等),就会执行脚本。
使用的浏览器将允许我们跟踪外部资源(如图像、脚本、iframe 等)的加载。当我们上传图像时,如果它保存在浏览器缓存中,则会触发 onload 事件。
我们如何创建一个警告框,无论图像是否被缓存,它都会在加载图像时显示?
我们需要创建一个警告框,当 onload 事件在图像上触发时,它将显示一条消息,说明图像已成功加载。 我们可以使用 JavaScript 和 HTML 来解决这个问题。
JavaScript 中的 image.onload 事件
使用 JavaScript,我们可以检查图像是否已完全加载。 我们将使用 HTMLimageElement 接口的 complete 属性。
当图像已完全上传时,此属性返回 true,否则返回 false。 我们在 JavaScript 中有 naturalWidth 和 naturalHeight 属性,我们可以使用其中任何一个。
我们在示例代码中使用了 .naturalWidth
,如果图像加载成功则返回 true,否则返回 0。
HTML 代码:
<!DOCTYPE html>
<html>
<head>
<title>Onload event using Javascript</title>
<link rel="stylesheet" href="styles.css" />
</head>
<body>
<h1 class="title">Onload event using Javascript</h1>
<script src="script.js"></script>
<img src="https://secure.gravatar.com/avatar?d=wavatar">
</body>
</html>
JavaScript 代码:
window.addEventListener("load", event => {
var image = document.querySelector('img');
var isLoadedSuccessfully = image.complete && image.naturalWidth !== 0;
alert(isLoadedSuccessfully);
});
如果我们运行这段代码,它会返回 true,这意味着图像加载成功。
HTML 中的 image.onload 事件
如果我们不想使用 JavaScript,我们可以使用 HTML 属性来检查图像是否已加载。 在 HTML 中,我们可以使用 onload 和 onerror 属性。
在 HTML 中,onload 属性在图像加载成功时触发,而 onerror 属性在加载图像时发生错误时触发。
我们在以下代码中使用了 onload 和 onerror 属性。 因此,在这些属性的帮助下,我们可以创建一个警告框,在加载图像时显示一条消息,说明图像已成功加载。
如果在加载图像时发生错误,它将显示一条消息,指出图像未加载。
HTML 代码:
<!DOCTYPE html>
<html>
<head>
<title>Onload event using HTML</title>
<link rel="stylesheet" href="styles.css" />
</head>
<body>
<h1 class="title">Onload event using HTML </h1>
<p id="currentTime"></p>
<script src="script.js"></script>
<img src="https://secure.gravatar.com/avatar?d=wavatar"
onload="javascript: alert('The image is loaded successfully')"
onerror="javascript: alert('Image is not loaded')" />
</body>
</html>
如果我们运行代码,它会显示图像加载成功的警告消息。
相关文章
JavaScript 删除所有事件监听器
发布时间:2023/06/05 浏览次数:83 分类:JavaScript
-
本篇文章将介绍如何删除 JavaScript 中的所有事件侦听器。移除 JavaScript 中的所有事件监听器 EventTarget 接口的 addEventListener() 方法配置一个函数,只要指定的事件被传递到目标,就会调用该函数。
JavaScript 中事件冒泡和捕获的区别
发布时间:2023/06/05 浏览次数:54 分类:JavaScript
-
本文将讨论在 JavaScript 中使用的事件冒泡和事件捕获。 阅读本文后,您将清楚地了解 JavaScript 中的事件冒泡和捕获。
JavaScript 触发事件
发布时间:2023/06/05 浏览次数:171 分类:JavaScript
-
JavaScript 触发事件 在 JavaScript 中,原始方法 initEvent() 用于创建新事件。 最新更新添加了用于构建自定义事件的新关键字。 此外,在为 JavaScript 构建的清单中还有大量事件。
在 JavaScript 中交换数组元素
发布时间:2023/06/05 浏览次数:52 分类:JavaScript
-
在这里,我们将看到所有可使交换任务更加灵活的优选示例。 让我们进入代码库!在 JavaScript 中使用临时变量交换数组元素 在下面的示例中,我们将采用两个具有相应元素的数组。
在 JavaScript 中检查数组中的所有值是否为真
发布时间:2023/06/05 浏览次数:180 分类:JavaScript
-
在本篇文章中,我们将学习如何在 JavaScript 中检查数组中的所有值是否为真。在 JavaScript 中使用 every() 方法检查数组中的所有值是否为真
在 JavaScript 中存储字节数组
发布时间:2023/06/05 浏览次数:80 分类:JavaScript
-
本文将讨论如何在 JavaScript 中存储字节数组。JavaScript 中的 ArrayBuffer 对象 字节数组或字节数组在 JavaScript 中称为 ArrayBuffer 对象。
JavaScript 中的深度复制数组
发布时间:2023/06/05 浏览次数:196 分类:JavaScript
-
在本文中,您将学习深拷贝和浅拷贝的概念。 本文还将介绍在 JavaScript 中对数组执行深拷贝的方法。JavaScript浅拷贝和深拷贝介绍 在 JavaScript 中,可以通过两种方式复制对象。
在 JavaScript 中将毫秒转换为日期
发布时间:2023/06/05 浏览次数:111 分类:JavaScript
-
在本文中,我们将通过示例学习如何使用 JavaScript 的默认日期对象及其方法从毫秒生成日期。
JavaScript Date.getTime() 方法
发布时间:2023/06/05 浏览次数:85 分类:JavaScript
-
在本文中,我们将讨论 Date 类中的 getTime() 方法是什么以及如何在不同的用例中获取时间。 此外,我们还将查看与 getTime() 类似的方法,即 now() 方法以及示例。