所以我有一个GWT应用程序,可以在IE6-8和大多数现代浏览器中完美运行。不幸的是,由于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标准模式并且所有相同{{1}当我在vanilla IE9中运行时,会出现事件问题。
有没有一种方法可以让IE9以onchange
元标记的方式模拟IE8标准模式,这与GWT 2.4一起使用?
答案 0 :(得分:1)
我遇到了类似的问题:IE忽略了<meta http-equiv="X-UA-Compatible" content="IE=9">
标签(我试图阻止IE8在IE7 compat模式下显示页面)。这是因为没有将X-UA-Compatible meta作为<head>
的第一个孩子。我将其设置为<head>
的第一个孩子,并将<!DOCTYPE HTML>
添加到所有内容之上,并且有效。