IE内存溢出报错Stack overflow at line[通俗易懂]

IE内存溢出报错Stack overflow at line[通俗易懂]该错误只在IE中出现,出现该提示的原因主要有两种:1.重定义了系统的触发事件名称作为自定义函数名如: onclick/onsubmit… 都是系统保留的事件名称,不允许作为重定义函数名称。2.出现死循环,都提示:Stackoverflowatline:0,如:在图片对象定义了onerror事件的循环处理、onload这里并不是说/im

大家好,又见面了,我是你们的朋友全栈君。

该错误只在IE中出现,出现该提示的原因主要有两种:

1. 重定义了系统的触发事件名称作为自定义函数名如:  onclick / onsubmit …  都是系统保留的事件名称,不允许作为重定义函数名称。

2. 出现死循环,都提示:Stack overflow at line: 0 , 如:在图片对象定义了 onerror 事件的循环处理、onload

<img src=”http://images.cnblogs.com/a.gif” οnerrοr=”this.src=’/image/block.gif’” />

这里并不是说 /images/a.gif 不存在, 可能是由于网络原因造成, 这时会执行 onerror 事件,  调用 /images/block.gif 去做当前图片的路径, 但如果当前 /image/block.gif 这个图片文件不存在, 再或者由于网络原因, ‘/image/block.gif’ 下载又出现错误时, 就出现了死循环。

上面哪个例子一般写成下面这种形式比较保险

<img src=”http://images.cnblogs.com/a.gif” οnerrοr=”this.error = null;this.src=’/image/block.gif’” />

所以在处理 onerror 事件时,要考虑是否是出现这样的问题。

” Stack overflow at line: 0 “ 该错误不是一直出现,是有时会出现, 是网络不正常导致死循环引起的, 查了好半天, 最后才找到这个原因,做下记号吧, 给有需要的人。

在IE中,有可能是执行两个动作起到的冲突等。

原文链接:
IE内存溢出报错Stack overflow at line 版权所有,转载时请注明出处,违者必究。

注明出处格式:前端开发博客 (
http://caibaojian.com/stack-overflow-at-line.html)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159805.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号