繁体   English   中英

在IE9中,控制台是未定义的错误

[英]Console is undefined error in IE9

我有一个显示SVG图形的图形页面。 我正在使用Raphael图形框架。 该页面在Firefox中正确显示,如果在IE9中将F12开发人员工具设置为“on”,则可以正常工作。 如果F12开发人员模式已启动且应用程序启动且浏览器缓存已清除(模拟普通用户),则地图将显示IE9中的部分数据(其节点链接图,并且仅显示12个节点中的一个子节点)。

更新:我保持​​调试器打开并显示错误“控制台未定义”。 所以我认为它不是图形渲染问题,而且我没有明确地使用控制台,也许思维导图js在内部使用它,但如何再次摆脱这个问题?

更新 :我发现了问题,并从js文件中注释掉了console.log条目。

谢谢。

可能你的代码或你正在调用的代码正在使用console.log或类似的东西。

您可以在全局范围中添加此代码,以便为IE(或任何不支持它的浏览器)创建虚拟包装器。 在调用任何其他库之前,只需将以下代码放在某处:

if(!(window.console && console.log)) {
  console = {
    log: function(){},
    debug: function(){},
    info: function(){},
    warn: function(){},
    error: function(){}
  };
}

问题是你的js代码有时会调用一个控制台方法,例如'console.log',但是你的浏览器没有控制台(或关闭它);

要解决此问题,请在包含任何脚本之前添加(一次):

//Ensures there will be no 'console is undefined' errors
window.console = window.console || (function(){
    var c = {}; c.log = c.warn = c.debug = c.info = c.error = c.time = c.dir = c.profile = c.clear = c.exception = c.trace = c.assert = function(){};
    return c;
})();

这将创建一个'伪'控制台,只有它不存在,以便'控制台未定义'错误将消失。

希望这可以帮助。 干杯

您的代码中是否有console.log()或console.error()调用?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM