前端的一些注意事项 <img onerror="src='images/no.png'">标签引起的异常

本文介绍了在使用HTML img标签时如何正确配置onerror属性来避免因图片加载失败而导致的前端崩溃及后端频繁404错误。提供了两种有效方案:一是通过清空onerror事件阻止循环请求;二是采用Base64编码确保默认图片始终可显示。

img标签的属性设置

            <img  src="XXXXX.png" onerror="src='images/no.png'" class="img-rounded"/>

当src的文件找不到时会触发 onerror来重新请求images/no.png这张图片,但是这张图片也不存在时会循环访问服务器请求图片 造成前端崩掉,后端频繁的404 error请求。


特别当分布式部署,而静态资源在别处时,这个情况还是容易遇到的。

解决方案

            <img th:src="XXXX.png" onerror="this.onerror='';src='images/no.png'" class="img-rounded"/>
这样连onerror的图片显示不出来的情况,跟不设置onerror的情况时一样的,浏览器会给你显示一张碎裂的缩略图。因为你的image/no.png图片没找到,404错误



还有一个解决方法

就是onerror的图片用base64编码显式写进去,优点是一定会显式onerror设置的默认图片,缺点是字符有点儿长

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值