解析img图片没找到onerror事件 Stack overflow at line: 0


Posted in Javascript onDecember 23, 2013

打开网页时提示 Stack overflow at line: 0。我做了截图如下:

经过分析,发现网页中存在类似如下的代码:

<img src="pic.gif" onerror="javascript:this.src='/noPic.gif';" alt="pic" />

分析:特别注意 onerror,当图片不存在时,将触发 onerror,而 onerror 中又为 img 指定一个 NoPic.gif 图片。也就是说图片存在则显示 pic.gif,图片不存在将显示 noPic.gif。但问题来了,如果 noPic.gif 也不存在,则继续触发 onerror,导致循环,故出现错误。

说明:如果图片存在,但网络很不通畅,也可能触发 onerror。

解决方法:第一种::.去掉 onerror 代码;或者更改 onerror 代码为其它;或者确保 onerror 中的图片足够小,并且存在。

第二种:
<script type="text/javascript"> 
<!-- 
    function nofind(){ 
        var img=event.srcElement; 
        img.src="../../../sys/common/image/fileoperation/icon/default.gif"; 

img.onerror=null;       控制不要一直跳动 

    } 
//没有找到时 用事件获取 一个一个获取 
//--> 
</script> 

<td align="center"><img src="../../../sys/common/image/fileoperation/icon/${file.suffix }.gif" onerror="nofind();" />${file.name }</td>    

第三种:
使用两个<img />

<style type="text/css">
hidden {
display: none;
}
</style>
<img src="xxx.jpg" onerror="this.class='hidden';xx.class=''" />
<img src="xxx.jpg" class="hidden" />

Javascript 相关文章推荐
javascript判断iphone/android手机横竖屏模式的函数
Dec 20 Javascript
js confirm()方法的使用方法实例
Jul 13 Javascript
利用JS来控制键盘的上下左右键(示例代码)
Dec 14 Javascript
checkbox全选所涉及到的知识点介绍
Dec 31 Javascript
js实现点击图片改变页面背景图的方法
Feb 28 Javascript
Jquery实现仿腾讯娱乐频道焦点图(幻灯片)特效
Mar 06 Javascript
easyui validatebox验证
Apr 29 Javascript
基于Bootstrap的Metronic框架实现页面链接收藏夹功能
Aug 29 Javascript
AngularJS使用带属性值的ng-app指令实现自定义模块自动加载的方法
Jan 04 Javascript
Iscrool下拉刷新功能实现方法(推荐)
Jun 26 Javascript
JavaScript链式调用实例浅析
Dec 19 Javascript
JS实现拖动模糊框特效
Aug 25 Javascript
判断客户浏览器是否支持cookie的示例代码
Dec 23 #Javascript
FireBug 调试JS入门教程 如何调试JS
Dec 23 #Javascript
JS中的异常处理方法分享
Dec 22 #Javascript
在线一元二次方程计算器实例(方程计算器在线计算)
Dec 22 #Javascript
判断文件是否正在被使用的JS代码
Dec 21 #Javascript
jquery鼠标停止移动事件
Dec 21 #Javascript
JS delegate与live浅析
Dec 21 #Javascript
You might like
php实现获取及设置用户访问页面语言类
2014/09/24 PHP
php实现比较全的数据库操作类
2015/06/18 PHP
php获取英文姓名首字母的方法
2015/07/13 PHP
tp5框架基于Ajax实现列表无刷新排序功能示例
2020/02/10 PHP
判断iframe是否加载完成的完美方法
2010/01/07 Javascript
javascript下高性能字符串连接StringBuffer类
2010/08/16 Javascript
JavaScript中的私有/静态属性介绍
2012/07/26 Javascript
JS幻灯片可循环播放可平滑旋转带滚动导航(自写)
2013/08/05 Javascript
jquery选择器、属性设置用法经验总结
2013/09/08 Javascript
浅析在javascript中创建对象的各种模式
2016/05/06 Javascript
Listloading.js移动端上拉下拉刷新组件
2016/08/04 Javascript
JavaScript中 ES6 generator数据类型详解
2016/08/11 Javascript
详解使用vue实现tab 切换操作
2017/07/03 Javascript
Three.js加载外部模型的教程详解
2017/11/10 Javascript
vue+iview+less 实现换肤功能
2018/08/17 Javascript
Vue使用localStorage存储数据的方法
2019/05/27 Javascript
详解template标签用法(含vue中的用法总结)
2021/01/12 Vue.js
python实现绘制树枝简单示例
2014/07/24 Python
python生成随机mac地址的方法
2015/03/16 Python
web.py在SAE中的Session问题解决方法(使用mysql存储)
2015/06/24 Python
Python I/O与进程的详细讲解
2019/03/08 Python
pytorch 在网络中添加可训练参数,修改预训练权重文件的方法
2019/08/17 Python
redis数据库及与python交互用法简单示例
2019/11/01 Python
pytorch实现CNN卷积神经网络
2020/02/19 Python
python GUI库图形界面开发之PyQt5复选框控件QCheckBox详细使用方法与实例
2020/02/28 Python
Python魔术方法专题
2020/06/19 Python
python如何删除文件、目录
2020/06/23 Python
python怎么判断素数
2020/07/01 Python
Pycharm2020最新激活码|永久激活(附最新激活码和插件的详细教程)
2020/09/29 Python
html5/css3响应式页面开发总结
2018/10/16 HTML / CSS
使用HTML5中的contentEditable来将多行文本自动增高
2016/03/01 HTML / CSS
水务局局长岗位职责
2013/11/28 职场文书
高校自主招生自荐信
2013/12/09 职场文书
驳回起诉裁定书
2015/05/19 职场文书
地震捐款简报
2015/07/21 职场文书
使用Bandicam录制鼠标指针并附带点击声音,还可以添加点击动画效果
2022/04/11 数码科技