必威体育Betway必威体育官网
当前位置:首页 > IT技术

关于浏览器报错:stack overflow at line: 0 的解决法

时间:2019-09-26 09:45:42来源:IT技术作者:seo实验室小编阅读:81次「手机版」
 

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插件完美解决【网页不能复制】问题

有些网页的内容不能够直接复制,很不方便。 chrome 有款插件 Enable Copy 非常简单地解决了此问题。单击插件地址直接安装即可。 安

Access denied for user 'root'@'localhost'问题

问题场景在阿里云上部署了一台服务器,CentOS6.8系统环境,安装了MySql+Nginx+Git+vsftpd等软件,在本地Linux终端以非root账户SSH远程

StoryLine3变量存储与跳转后台时的使用

 前言 公司项目原因,接触到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

分享到:

栏目导航

推荐阅读

热门阅读