【问题标题】:IE11 in Emulation mode IE9 stopping Javascript execution while console is off (no F12)仿真模式下的 IE11 IE9 在控制台关闭时停止 Javascript 执行(无 F12)
【发布时间】:2018-01-07 04:41:26
【问题描述】:

我已经在页面中加载了一组 Javascript,并且将在单击某个按钮时执行。我的浏览器是 IE11 最新版本,由于我的应用程序工具不支持 IE11,我进行了更改以在文档仿真模式下运行应用程序及其内部的任何内容到 IE9(使用“X-UA-Compatible”)并且我已将我的域添加到IE11 中的兼容性列表。 我遇到了一个非常令人惊讶的问题。 如果控制台(F12 开发人员工具)保持打开状态,我所有的 JS 代码都可以正常执行。但是,一旦在 IE11 中关闭控制台,它就会停止执行 JS 的某些部分。 请注意,我的 JS 代码中没有任何内容带有 console.log 。 而且我已经明确尝试在我的 JS 中添加以下内容,但它仍然无法正常工作,

<meta http-equiv="X-UA-Compatible" content="IE=9" /> 

任何人都可以帮助解决可能的问题吗? 感谢并感谢您的帮助。

我可能会遇到下面提到的类似问题: Why does JavaScript only work after opening developer tools in IE once?

但是当我在 head 部分或 body 部分添加我的代码时,下面对我不起作用:所以不确定 IE11 这是否仍然是一个问题以及如何解决这个问题:

<script>
  if ( ! window.console ) console = { log: function(){} };
  if(!console) {console={}; console.log = function(){};}

</script>   

【问题讨论】:

    标签: javascript internet-explorer-11 document mode


    【解决方案1】:

    我提出解决方案并解决我的问题。看起来我放在我的 javascript 中的 AJAX 请求没有得到处理,因为我的页面有一些缓存问题。如果您的站点或页面存在缓存问题,您将不会在开发人员/F12 模式下看到该问题。我缓存的 javascript AJAX 请求它可能无法按预期工作并导致执行中断,而 F12 完全没有问题。 所以只是添加了新参数以使缓存为假。

    $.ajax({
                   cache: false,
    });
    

    看起来 IE 特别需要将此设置为 false,以便 AJAX 和 javascript 活动运行良好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-14
      • 1970-01-01
      • 1970-01-01
      • 2017-09-07
      • 1970-01-01
      • 2019-04-23
      • 2017-03-29
      • 1970-01-01
      相关资源
      最近更新 更多