我有一个使用GWT 2.0.4并在IE8浏览器上正常运行的应用程序。在IE11中打开时,它会显示空白页面,并在下面给出错误消息。
com.google.gwt.core.client.JavaScriptException : (TypeError) : Object doesn’t support property or method ‘attachEvent’
引发了异常,因为“attachEvent”是旧版Internet Explorer中使用的已弃用函数。 IE11使用“addEventListener”方法而不是“attachEvent”。
user.agent值设置为“ie6”,因此我将其更改为“gecko1_8”。更改用户代理后,它会打开应用程序,但表中的数据(GWT-ext GridPanel)会相互重叠,滚动条丢失,菜单栏的对齐方式也会更改。
启用兼容模式后,它正常工作。在IE11中运行我的应用程序的正确解决方法是什么?我是否需要升级GWT,如果是,那么哪个版本支持IE11?我不必使用“X-UA-Compatible = IE8”元标记....请帮助
答案 0 :(得分:6)
与Web上的任何内容一样,您应该始终尝试运行最新版本,因为应用程序周围的一切都会发生变化。 2.0.4 is 5 years old already!
所以,是的,升级到最新版本的GWT(截至今天为2.7.0),下一个版本将会到来(2.8,几周后)也尝试升级。
作为一种解决方法,因为它适用于IE8,您可能会要求IE11使用值为X-UA-Compatible
的{{1}}来模拟它。但这只是一个临时的解决方法,因为下一个版本(Edge,将在Windows 10中替换IE)将不再支持IE=EmulateIE8
( Intranet区域除外)。请参阅the X-UA-Compatible
doc和this announcement by Mirosoft顶部的警告。真正的解决方案是与GWT版本保持同步,就像您保持浏览器版本的最新版本一样。