【问题标题】:js can work under IE development tool onlyjs只能在IE开发工具下工作
【发布时间】:2016-06-24 03:45:03
【问题描述】:

我正在维护一个旧的 Intranet 项目,它必须在 IE7+ 下工作,主要是 IE11 和 IE7 仿真模式。我发现有时前端脚本可以正常工作,有时不能。但是这些脚本可以在开发人员工具下按预期运行 100%,没有任何错误或警告。这很烦人,我不能向用户建议,如果出现问题,请按 F12,然后按 F5。

那么,我该怎么办?

ps:

  1. 这与未定义控制台无关,我有备用代码(还有很多其他兼容性问题)。
  2. 不是angularjs,我没用过。

== 更新 ==

我正在尝试以文字形式举例说明症状:

  1. 通过发出ajax调用从domino服务器获取数据,并得到json结果
  2. 处理 json 结果 - 按日期对 json 结果排序(包括将 domino 特定的 json 日期格式转换为 datetime 对象)
  3. 将结果写入 dom 中的列表

结果列表有两个要显示的字段,消息正文和处理日期。

消息正文总是正确显示,有时日期字段变为'null'(如果一条记录为空,则所有记录都为空)。调试器开启时整个列表都能正确显示,没有任何错误产生。

【问题讨论】:

  • 所以有些脚本可以神奇地工作或不能随机工作,但由于某种原因在开发人员工具中工作正常?我不明白这有什么意义。开发者工具执行 JS 的方式与浏览器不同,它只是一个调试工具。
  • 可能是缓存问题吗?我认为一些开发工具默认关闭缓存,因此打开它会导致浏览器再次获取所有内容
  • 根据我过去的经验,您可能需要强制重绘 UI。或者你在某个地方的脚本中有调试代码。在代码中搜索对控制台的任何引用并删除。这是我能想到的两种最有可能的情况。

标签: javascript internet-explorer developer-tools


【解决方案1】:

您可以更改 IE11 开发工具中的仿真选项,有时(至少对我而言)您上次使用的仿真设置会在您打开 F12 工具备份时重新启动。 确保“模拟”选项卡中的“文档模式”设置为 7(因为您希望您的网站在该模式下工作。)

【讨论】:

  • 我认为这与我的问题无关,大多数页面都添加了指定仿真模式的元标记,如下所示:
猜你喜欢
  • 2013-07-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多