javascript - 如果图像未加载,则替换跨度内容
问题描述
我有一个 Image 和 span 标签。如果由于错误而无法加载图像,我想从 DOM 中删除图像元素并使用 id 更改 span 的内容,loadErrorSpan
否则"Access Denied. Please login."
它将是"Loading...Please wait"
<img src="SomeImage.jpg" onerror="this.remove();"
alt="Some Image" width="100" height="120">
<br>
<span id="loadErrorSpan" style="font-family: sans-serif;
font-size:18px;text-align: center;color: #666;">Loading...Please wait</span>
我能够在错误时删除图像,但不能更改跨度内容。如何仅使用 JavaScript 执行此操作。不应使用 Jquery 或任何其他库。
解决方案
您可以制作onerror
一个特定的处理程序,在那里,也可以替换跨度内容
function onImgLoadError(imgEl) {
imgEl.remove()
document.getElementById('loadErrorSpan').innerText = 'Loading failed'
}
<img src="SomeImage.jpg" onerror="onImgLoadError(this)" alt="Some Image" width="100" height="120">
<br>
<span id="loadErrorSpan" style="font-family: sans-serif;
font-size:18px;text-align: center;color: #666;">Loading...Please wait</span>
推荐阅读
- python - 在 GetOldTweets3 中指定语言?
- python - pyplot .savefig() 在 spyder 控制台中使用时不会输出正确的大小,但在脚本内部调用时可以正常工作
- c - 错误结构在 C 语言中没有成员“”
- google-tag-manager - 如何创建一个 GTM 数据层变量来拉取产品数组中的最后一项
- google-cloud-platform - 创建和自定义在 6.4 版数据融合中禁用的计算配置文件
- shopify - 这个 for 循环有什么问题 Liquid Shopify
- java - XML 节点替换失败
- r - 如何在ggplot2中使用粗体字体与纯字体和换行符?
- ssis - 使用 SSIS 将数据从 Dynamic 365 增量复制到 Oracle
- android - Android 11 + Kotlin:读取 .zip 文件