利用onerror 事件处理img标签中的src图片加载失败

简介: 利用onerror 事件处理img标签中的src图片加载失败

如果 img标签中的src图片logo.png加载失败,原来的图片位置会被error.png 替换

<img src="logo.png" onerror="handleImageError()" />

<script type="text/javascript">
  function handleImageError() {
    console.log(event);
    var img = event.target;
    img.src = "error.png";
    // 控制它不循环;
    img.onerror = null;
  }

如果logo.png不存在会触发 onerror事件,指定图片error.png 去替补,

如果替补图片error.png 还不存在,还会继续触发onerror事件,

需要使用img.onerror=null 取消事件处理

Vue处理方式

<template>

<img v-bind="$attrs"
v-on="$listeners"
@error="handleError" />
</template>

<script>
/**
* 有错误处理的图片
*/
export default {
name: "MoImage",

data() {
return {
// 默认值
defaultImage: require("@/assets/image/image-default.png"),
};
},

methods: {
// 错误值处理
handleError(event) {
event.target.src = this.defaultImage;
// 控制不要一直跳动
event.target.onerror = null;
},
},
};
</script>

参考

img标签的onerror事件

            </div>
目录
相关文章
|
前端开发
react 判断标签img 图片是否存在,不存在则替换为默认图片
react 判断标签img 图片是否存在,不存在则替换为默认图片
768 0
|
JavaScript
利用onerror 事件处理img标签中的src图片加载失败
利用onerror 事件处理img标签中的src图片加载失败
517 0
|
JSON JavaScript 数据库
【vue】v-for循环图片加载不出来,直接在src上面写图片链接就可以加载出来,或者使用require(图片链接)可以加载出来
【vue】v-for循环图片加载不出来,直接在src上面写图片链接就可以加载出来,或者使用require(图片链接)可以加载出来
1078 0
【vue】v-for循环图片加载不出来,直接在src上面写图片链接就可以加载出来,或者使用require(图片链接)可以加载出来
|
JavaScript 前端开发
JS判断图片加载完成方法
javascipt原生方法 选取指定ID的图片,通过onload指定回调方法,在图片加载完成后弹出“图片加载已完成”字样提示。 document.getElementById("pic1").onload = function () { alert("图片加载已完成"); } 优点:简单易用,不影响HTML代码。
1613 0
|
Web App开发 JavaScript 前端开发