我刚开始在Win8上玩IE10并遇到问题。当“文档模式”设置为“标准”时,开发人员工具控制台似乎不起作用。我已经玩过浏览器模式和文档模式,并且当设置为IE9标准时控制台工作,但是将其设置为简单的“标准”,IE10的默认设置,控制台是未定义的。有什么想法吗?
这不重复。测试时,开发人员控制台已打开。将Doc模式切换为IE9标准并重新加载按预期显示控制台输出。切换回IE10标准不显示控制台输出。调试显示控制台未定义,因此将console.log设置为空函数以处理未定义。我很好奇为什么在IE10标准模式下控制台是未定义的。
我在VirtualBox中运行Win8。我的页面是带有适当doctype的HTML4标记。
答案 0 :(得分:7)
console.log();
未定义的原因是因为标准模式的工作原理。 IE 8有一个兼容模式,从字面上把它变成IE 7,删除了对添加到IE 8的功能的所有理解。控制台是在IE 10中添加的,所以通过在标准模式下运行它,它会有意义抛出错误。
<head>
<title>Force IE 10</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
</head>
此处的元标记将强制IE在您安装的最新版本中运行(禁用标准和兼容模式)。这是在IE 10中以标准模式定义控制台的唯一方法 - 禁用标准模式。
答案 1 :(得分:5)
定义它!
if (typeof console == "undefined") {
this.console = {log: function() {}};
}