未执行Internet Explorer Javascript

未执行Internet Explorer Javascript,javascript,internet-explorer,ie-developer-tools,Javascript,Internet Explorer,Ie Developer Tools,我目前面临一个javascript块和internet explorer 9的奇怪问题。 当我加载页面时,没有执行documentready函数,实际上似乎根本没有执行javascript。当我重新加载页面几次后,脚本块最终被执行。执行脚本时,我找不到任何模式 <script type="text/javascript"> $(document).ready(function() { console.log("ie test - s

我目前面临一个javascript块和internet explorer 9的奇怪问题。 当我加载页面时,没有执行documentready函数,实际上似乎根本没有执行javascript。当我重新加载页面几次后,脚本块最终被执行。执行脚本时,我找不到任何模式

<script type="text/javascript">
            $(document).ready(function() {
              console.log("ie test - start");
              $("#id_project").select2({ width: 'resolve' });
              $("#id_year").select2({ width: 'resolve' });
              $("#id_month").select2({ width: 'resolve' });
              $("#id_purchase_order_membership").select2({ width: 'resolve' });
              $("#id_action").select2({ width: 'resolve' });
              console.log("ie test - end");
            });

        $( document ).ajaxStop( function() {
              $("#id_project").select2({ width: 'resolve' });
              $("#id_year").select2({ width: 'resolve' });
              $("#id_month").select2({ width: 'resolve' });
              $("#id_purchase_order_membership").select2({ width: 'resolve' });
              $("#id_action").select2({ width: 'resolve' });
        });
    </script>

$(文档).ready(函数(){
日志(“ie测试-启动”);
$(“#id_项目”)。选择2({width:'resolve'});
$(“#id_year”)。选择2({width:'resolve'});
$(“#id_month”)。选择2({width:'resolve'});
$(“#id#U采购#U订单#U会员资格”)。选择2({宽度:'解析'});
$(“#id_action”)。选择2({width:'resolve'});
日志(“ie测试结束”);
});
$(文档).ajaxStop(函数(){
$(“#id_项目”)。选择2({width:'resolve'});
$(“#id_year”)。选择2({width:'resolve'});
$(“#id_month”)。选择2({width:'resolve'});
$(“#id#U采购#U订单#U会员资格”)。选择2({宽度:'解析'});
$(“#id_action”)。选择2({width:'resolve'});
});
更奇怪的是,当我启动IE的开发工具时,脚本就被执行了。似乎我在IE中触发了一些东西,开发者工具的启动让IE记住有一些js需要执行。很奇怪。在接下来的几天里,我将尝试部署一个示例脚本,因为我知道要解决这样一个奇怪的问题并不容易。我的测试部署当前正在仅登录的站点中运行。无论如何,也许有人也面临过同样的问题。

据我所知

 console.log();

在IE中不起作用。请删除这些行,然后重试

最好将代码包含在
try catch
块中。Javascript只是在出错时崩溃,并终止随后出现的所有脚本。

如果我没记错的话,
控制台
对象只有在开发工具打开时才可用。尝试删除
console.log
行。谢谢,是的,这就是问题所在。是的,console.log()在IE中很脆弱(以我的经验)。当开发工具关闭时,加载带有console.log()的页面将失败(至少在IE8中)。用开发工具加载它是开放的,可以很好地工作。可能有一些我不知道的附带情况,但对于在IE中进行测试,请去掉它。@Andreas在某些版本的IE中,
控制台
对象只有在开发工具打开时才可用。不要在生产代码中留下
控制台.log
行。@nbrooks Me:它正在工作,但只有在开发工具打开时才工作。您:在某些版本的IE中,控制台对象只有在开发工具打开时才可用-我很困惑^^^谢谢。我将删除所有console.log调用,并查看是否有更改。对我来说奇怪的是,代码有时被执行,有时不被执行,即使是使用关闭的开发工具。这解决了我的问题。首先,我试图将控制台包装成一个if块(if(console){console.log(“…”);}),但仅删除所有控制台引用就解决了我的问题。非常感谢!@andreas oops,我以为你是OP。这是为了Tom
:)