Javascript 也就是说,首先我会抓取我的JS脚本,然后我按下F12键,它工作得非常漂亮

Javascript 也就是说,首先我会抓取我的JS脚本,然后我按下F12键,它工作得非常漂亮,javascript,internet-explorer,debugging,crash,Javascript,Internet Explorer,Debugging,Crash,我有一个JS脚本,可以在所有浏览器中正常工作。 但让所有人惊讶的是,在第一次尝试时它不起作用 如果在加载页面后,我按F12(打开调试器)并刷新页面, 很好用!就像其他浏览器一样!但对于这项工作,我必须按F12 当我们打开i.e.的调试器时,它是否执行了某些操作? 我找不到解决办法 提前感谢。您的脚本中是否有类似于console.log()的内容?这也许可以解释,因为在没有打开调试器的情况下按F12键之前,没有控制台,IE认为没有console.log这样的东西,并为调用未定义函数提供错误。当您点

我有一个JS脚本,可以在所有浏览器中正常工作。 但让所有人惊讶的是,在第一次尝试时它不起作用

如果在加载页面后,我按F12(打开调试器)并刷新页面, 很好用!就像其他浏览器一样!但对于这项工作,我必须按F12

当我们打开i.e.的调试器时,它是否执行了某些操作? 我找不到解决办法


提前感谢。

您的脚本中是否有类似于
console.log()的内容?这也许可以解释,因为在没有打开调试器的情况下按F12键之前,没有控制台,IE认为没有console.log这样的东西,并为调用未定义函数提供错误。当您点击F12时,就会得到控制台,因此console.log不再是未定义的

您可以通过将此项放在代码顶部来解决此问题:

if (!window.console) window.console = {};
if (!window.console.log) window.console.log = function () { };
与其从代码中编辑出console.log,这只会使浏览器在控制台不存在时无所作为,如果控制台未定义,则将其定义为“不做任何事情”函数


如果您希望缩小js文件的大小(对于移动设备的使用尤其重要),您最终会希望删除发布版本上的详细日志记录。

上一篇文章中的扩展版本

if (!('console' in window)) {
    var stub = function() { ; };
    window.console = {
        log : stub,
        info : stub,
        warn : stub,
        error : stub,
        assert : stub
    };
}
我正在发布这个新的,只在需要时安装存根

/**
 * On IE console is not set if not opened and debug doesn't exists
 */
(function() {
    if (!('console' in window)) { window.console = {}; }
    var kind = ['log', 'info', 'warn', 'error', 'assert', 'debug'];
    var stub = function() { ; };
    for (var i = 0; i < kind.length; i++) {
        if (kind[i] in window.console) { continue; }
        window.console[kind[i]] = stub;
    }
})();
/**
*如果未打开且调试不存在,则不会设置IE上的控制台
*/
(功能(){
如果(!('console'在窗口中)){window.console={};}
var-kind=['log','info','warn','error','assert','debug'];
var stub=函数(){;};
对于(变量i=0;i
!非常感谢你。成功了。我已经删除了我的控制台日志,因为我真的不需要它们。这个特殊的问题以前也让我感到困惑。您可以添加类似于
if(typeof(console)='undefined')console={log:function(text){}保存到您的代码中,以保留console.log statements.iWerner,如果您希望即使在不运行控制台的情况下也能够访问日志,这不是一个坏主意。我这样做是因为我想如果我没有打开控制台,我可能根本不需要日志来做任何事情,所以我只是把它作为一个“什么都不做”的函数。希望我一周前看到这个。