我有一个使用GWT 2.4.0构建的应用程序。前段时间出现了一个问题,对于某些Internet Explorer用户来说,第一次没有正确加载应用程序(仅显示静态内容)。但是,使用刷新(F5)后,应用程序会正常重新加载并在此之后正常工作。
关于这个问题的一些注意事项:
Browser Mode: IE9 Compat View
和Document Mode: IE7 standards
。可能是什么问题?我怎样才能准确找出并解决问题的原因?
答案 0 :(得分:0)
您可以尝试修改History.gwt.xml,并删除:
<!-- IE6 has a completely different history implementation. IE8 used the -->
<!-- standard implementation. -->
<replace-with class="com.google.gwt.user.client.impl.HistoryImplIE6">
<when-type-is class="com.google.gwt.user.client.impl.HistoryImpl"/>
<when-property-is name="user.agent" value="ie6"/>
</replace-with>
如果将此修改后的文件及其命名空间添加到项目中,它应该获得正确的历史记录实现。
我不明白为什么如果你在IE8和IE9中,你的项目会选择HistoryImplIE6
。
答案 1 :(得分:0)
最后,Internet Explorer的缓存似乎存在一些问题。它似乎保留了收藏夹中的网站的一些缓存。实际上有两个解决方案:
a)对于用户,修复方法是从收藏夹中删除链接,然后重新添加链接。
b)在代码中,我们向index.jsp
添加了以下标记,以强制IE9进入IE9文档模式,如this question所示:
<meta http-equiv="X-UA-Compatible" content="IE=9">
这些解决方案是独立的,可以一次使用一个,也可以同时使用。