IE9 不F12打开控制台,代码不执行。打开后正常

  对每个前端er来说,提起来ie就是头大,各种兼容性的问题,让人头大。前两天就在ie9下遇到一个比较少见的问题。
  具体情况是这样的:

  ie9下,js不执行,各种绑定事件不起作用。其他浏览器都6得飞起。当然了遇到这种情况肯定要打开控制台看一下什么情况,打开之后发现代码ok,没有什么报错,并且js运行正常。
  因为正在使用react+es6,所以当时不确定是浏览器兼容性还是部分es6语法不被支持,后来排除了其他可能,只剩浏览器兼容的问题了。后来搜了一下,有人提到ie9不支持console对象,需要删除调试用的相关语句。后来试了一下,果然是这个问题。无语至极
  所以后面如果遇到这个问题有两种解决方案。
  1、直接删除console对象的语句,一般调试用而已,正式上线应该不需要。
  2、判断浏览器是否支持window.log,如果不支持,自定义空方法,排除undefind报错即可,毕竟console.log不起实际作用。

    

//是否支持console对象
if(!window.console){
    window.console = {
        log: '',
        dir:'',
        warn:''
    }
}

 

posted @ 2016-06-15 17:16  潇湘待雨  阅读(1116)  评论(0编辑  收藏  举报