javascript - IE 控制台问题

标签 javascript internet-explorer

我检查了我的 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/

相关文章:

javascript - 将连接的 Gulp 流 file.contents 管道连接到服务器(connect、express 或 http)响应

javascript - 响应已被 'return false' 取消的 Submit() 操作的最简单方法是什么

javascript - 如何在 Mootools 中获取 div 的位置?

css - IE10/11 中的 Flexbox 网格未对齐

javascript - Selenium 构建 Internet Explorer 驱动程序 javascript 错误

JavaScript getElementById(...) 为 null 或不是对象 IE

javascript - 带循环克隆的 Angular Owl 旋转木马超出范围

javascript - 使用 php 和 mysql 选项

internet-explorer - .msi 以文本形式下载

javascript - 对于 IE 的 "executed script statement"警告计数器,什么算作 "Stop running this script?"?