我检查了我的 index.php 并删除了所有的 console.log() 但是当我转到 IE7 时我仍然收到控制台错误。有趣的是,如果我在 IE9 中检查,然后将浏览器模式更改为 IE7,它工作正常,但是如果直接在 IE7 浏览器中测试站点,它会给出控制台错误消息。
关于如何停止这种情况的任何想法?
最佳答案
您可能错过了某个地方的 console.log
调用。之所以在IE9切换到IE7时起作用,是因为当你打开控制台切换版本时,console对象就被创建了。这样在IE9的IE7仿真模式下就不会报错。
更好的解决方案是预先在您的 js 代码中包含以下内容:
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
切换日志记录,并且可以安全地防止丢失的控制台对象。
关于javascript - IE 控制台问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12822844/