所以我有一个在 IE6-8 和大多数现代浏览器中完美运行的 GWT 应用程序。不幸的是,由于 IE9 如何处理元素onchange事件的一个已知错误<select>,它在 IE9 中几乎无法使用。
因此,我没有让我们的客户降级到 IE8,而是有了让 IE9 模拟 IE8 的绝妙主意。我将此元标记放在我的 GWT 主机页面中:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" >
当我查看 IE9 开发人员工具 ( F12) 时,我看到它的“浏览器模式”是 IE9,“文档模式”是 IE8 标准。但是,GWT 应用程序没有加载:它在 GWT 生成的一个压缩和混淆的 JavaScript 函数中给了我一个 JavaScript 错误。我没有能力通过 IE 调试应用程序,所以我不知道发生了什么。
我怀疑这与 GWT 检测正在使用的浏览器并为会话加载适当资源的方式有关。
编辑添加:当我尝试使用IE=8而不是 时IE=EmulateIE8,开发工具仍然报告 IE9/IE9 标准模式,并且与onchange我在普通 IE9 中运行时存在所有相同的事件问题。
是否有一种工作方式可以使 IE9 以http-equiv元标记的方式模拟 IE8 标准模式,适用于 GWT 2.4?