JavaScript通过使用onerror设置默认图像显示代替alt


Posted in Javascript onMarch 01, 2016

JavaScript代码

 //图像加载出错时的处理
function errorImg(img) {
img.src = "默认图片.jpg";
img.onerror = null;
}

html代码

<img width="32" height="32" src="1.jpg" onerror="errorImg(this)" />

为了美观当网页图片不存在时不显示叉叉图片

当在页面显示的时候,万一图片被移动了位置或者丢失的话,将会在页面显示一个带X的图片,很是影响用户的体验。即使使用alt属性给出了”图片XX”的提示信息,也起不了多大作用。
其实,可以这样处理:当图片不存在的时候,会触发onerror事件,我们可以在该事件中做一下补救的工作,比如:

1、让这个图片元素隐藏:

为了美观当网页图片不存在时不显示叉叉图片 src="图片的url地址" alt="图片XX" onerror="this.style.display='none'"/>

2、用默认的图片替换:

为了美观当网页图片不存在时不显示叉叉图片 src="图片的url地址" alt="图片XX" onerror="this.src='默认图片的url地址'"/>

注意:如果使用不当,在IE内核的浏览器下会造成死循环。比如:当【默认图片的url地址】也加载不成功(比如网速比较慢的时候)或不存在的话,就会反复的加载,最后造成堆栈溢出错误。

因此, 需要用下面两种方法解决:

a、更改 onerror 代码为其它处理方式或者确保 onerror 中的默认图片足够小,并且存在。

b、控制onerror事件只触发一次,需要增加这句话:this.onerror=null; 增加后如下:

为了美观当网页图片不存在时不显示叉叉图片 src="图片的url地址" alt="图片XX" onerror="this.src='默认图片的url地址;this.onerror=null'"/>

经测试,上面的方法在IE各个版本及谷歌、火狐浏览器中都支持。

Javascript 相关文章推荐
js跟随滚动条滚动浮动代码
Dec 31 Javascript
五个jQuery图片画廊插件 推荐
May 12 Javascript
JS实现点击链接取消跳转效果的方法
Jan 24 Javascript
用jQuery实现的智能隐藏、滑动效果的返回顶部代码
Mar 18 Javascript
JavaScript关闭当前页面(窗口)不带任何提示
Mar 26 Javascript
完美实现仿QQ空间评论回复特效
May 06 Javascript
JavaScript实现下拉列表框数据增加、删除、上下排序的方法
Aug 11 Javascript
js全选按钮的实现方法
Nov 17 Javascript
jQuery 中的 DOM 操作
Apr 26 Javascript
AngularJS实现根据变量改变动态加载模板的方法
Nov 04 Javascript
js实现鼠标拖拽多选功能示例
Aug 01 Javascript
vue学习教程之带你一步步详细解析vue-cli
Dec 26 Javascript
jQuery增加与删除table列的方法
Mar 01 #Javascript
JavaScript如何实现组合列表框中元素移动效果
Mar 01 #Javascript
JavaScript常用函数工具集:lao-utils
Mar 01 #Javascript
JavaScript Array对象详解
Mar 01 #Javascript
jQuery计算文本框字数及限制文本框字数的方法
Mar 01 #Javascript
jQuery xml字符串的解析、读取及查找方法
Mar 01 #Javascript
原生javascript实现解析XML文档与字符串
Mar 01 #Javascript
You might like
海贼王:最美的悬赏令!
2020/03/02 日漫
使用PHP生成二维码的两种方法(带logo图像)
2014/03/14 PHP
Laravel框架生命周期与原理分析
2018/06/12 PHP
动态加载iframe
2006/06/16 Javascript
select、radio表单回显功能实现避免使用jquery载入赋值
2013/06/08 Javascript
JavaScript实现在数组中查找不同顺序排列的字符串
2014/09/26 Javascript
js获取域名的方法
2015/01/27 Javascript
JavaScript对数字的判断与处理实例分析
2015/02/02 Javascript
JS的数组迭代方法
2015/02/05 Javascript
js插件设置innerHTML时在IE8下提示“未知运行时错误”解决方法
2015/04/25 Javascript
CSS+JS实现点击文字弹出定时自动关闭DIV层菜单的方法
2015/05/12 Javascript
jquery实现(textarea)placeholder自动换行
2016/12/22 Javascript
性能优化之代码优化页面加载速度
2017/03/01 Javascript
js省市区级联查询(插件版&amp;无插件版)
2017/03/21 Javascript
JS实现商品筛选功能
2020/08/19 Javascript
Angular2环境搭建具体操作步骤(推荐)
2017/08/04 Javascript
js实现掷骰子小游戏
2019/10/24 Javascript
Vue项目前后端联调(使用proxyTable实现跨域方式)
2020/07/18 Javascript
vue3 watch和watchEffect的使用以及有哪些区别
2021/01/26 Vue.js
python抓取京东价格分析京东商品价格走势
2014/01/09 Python
python中的yield使用方法
2014/02/11 Python
使用Python从有道词典网页获取单词翻译
2016/07/03 Python
python解决js文件utf-8编码乱码问题(推荐)
2018/05/02 Python
python 多线程中子线程和主线程相互通信方法
2018/11/09 Python
基于python实现的百度音乐下载器python pyqt改进版(附代码)
2019/08/05 Python
Python将列表中的元素转化为数字并排序的示例
2019/12/25 Python
pytorch 准备、训练和测试自己的图片数据的方法
2020/01/10 Python
Python Tornado批量上传图片并显示功能
2020/03/26 Python
戴尔美国官网:Dell
2016/08/31 全球购物
应届生法律求职信
2013/10/22 职场文书
全民健身日活动方案
2014/01/29 职场文书
医药销售求职信范文
2014/02/01 职场文书
会计学生自我鉴定
2014/02/06 职场文书
培训感想范文
2015/08/07 职场文书
python tkinter模块的简单使用
2021/04/07 Python
一文搞懂PHP中的抽象类和接口
2022/05/25 PHP