stack overflow at line
本文主要是从程序猿的角度进行分析的,致力于提供解决问题的思路,而不是盲目的从网上百度
关于页面错误:stack overflow at line: 0
很明白,就是堆栈的溢出!所以,导致的原因也很清楚,无非就是页面中出现了类似于递归式的无线循环而导致的,所以可能出现的原因就很明晰了:
1.浏览器对图片,js等引用进入了无线循环
这时候出错的原因,无非是图片路径不正确或者引用多个相同的js可能会导致这个问题,这个时候的步骤是:
a.检查整个页面,是否有图片缺失或者不完整,
b.通过看源代码检查是否引用了相同的js
2.js代码写的进入了死循环
这时首先想到的不是去看js代码,而是先在错误的页面进行确定,是哪个功能会造成报错,确定到某一个事件,比如click事件,blur事件或者focus事件等,然后针对性的去看代码进行调试或者在js代码里添加“debugger”浏览器执行到此处时会自动进入调试模式
3.由于每种浏览器所执行的内核可能不同,对js的兼容性也可能不同,所以浏览器的影响也会出现这种问题
此时就需要多种浏览器进行测试,一般ie浏览器的各个版本也会有影响,此时就需要进行对比,比如浏览器版本之间对比,正常页面和错误页面进行对比,最终肯定能找到那段浏览器不兼容的代码
ps:附上获取浏览器版本的代码,以ie8为例:
//IE8的浏览器
var useragent = navigator.useragent; //取得浏览器的userAgent字符串
var isIE = userAgent.indexof("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器
if(isIE) {
var reIE = new RegExp("MSIE (\\d+\\.\\d+);");
reIE.test(userAgent);
var fIEVersion = parseFloat(RegExp["$1"]);
if(fIEVersion == 8) {
...
}else{
console.log("---------");
}
}
如有不正确的地方请批评指正,互相学习
相关阅读
有些网页的内容不能够直接复制,很不方便。 chrome 有款插件 Enable Copy 非常简单地解决了此问题。单击插件地址直接安装即可。 安
Access denied for user 'root'@'localhost'问题
问题场景在阿里云上部署了一台服务器,CentOS6.8系统环境,安装了MySql+Nginx+Git+vsftpd等软件,在本地Linux终端以非root账户SSH远程
前言 公司项目原因,接触到storyline3(后面简称SL)课件制作工具,类似ppt,但是又多了互动、交互,且页面元素可添加触发器,触发器中可执
LinearLayout和RelativeLayout属性和性能详解
一、前期基础知识储备上,官方文档由上面的官方文档,我们可以看出,两个布局方式的相同,都是继承自View.Group,是一种容器控件,LinearLayo
rust中slice panicked at 'byte index 5 is not a ch
今天在工作中遇到一个问题,string调用truncate()接口panic了,报错信息大致如下:thread '0' panicked at 'assertion failed: self.is