我检查了我的index.php并删除了所有的console.log()但是当我转到IE7时,我仍然遇到控制台错误。有趣的是,如果我在IE9中检查然后将浏览器模式更改为IE7,它可以正常工作,但是如果将网站直接测试到IE7浏览器,则会出现控制台错误消息。
有关如何制止此事的任何想法吗?
答案 0 :(得分:2)
你可能错过了console.log
某个地方的电话。它在IE9中切换到IE7的原因是,只要打开控制台切换版本,就会创建控制台对象。因此,在IE9的IE7仿真模式中不会抛出任何错误。
更好的解决方案是事先在js-code中包含以下内容:
if (!window.console){console = {log:function(){}};}
现在,所有console.log
次调用都不会引发错误,但会被忽略。
我在开发时执行以下操作:
var logging = 1;
if (!window.console){console = {log:function(){}};}
function _log(a) { if(logging) { console.log(a); } }
并继续使用_log("foo")
代码。现在,您可以使用简单的logging = 0
切换日志记录,并且可以安全地防止丢失的控制台对象。