带#的GWT URL不适用于IE7

时间:2011-04-13 17:33:33

标签: ajax gwt internet-explorer-7

IE似乎存在一个已知问题,它不响应其中包含#符号的网址。 例如,请参阅:https://mootools.lighthouseapp.com/projects/2706/tickets/638-request-fails-when-url-has-hash-in-ie7

由于我们在基于GWT的应用程序中经常使用#,因此我们缺乏对想要浏览网站的IE7用户的支持。

除了修改URL之外,是否有任何已知的GWT解决方法?

3 个答案:

答案 0 :(得分:0)

历史在所有IE版本的GWT应用程序中运行良好......

该票证与XMLHttpRequest有关,因此请勿在xmlhttprequests中使用哈希值。它与GWT无关。

答案 1 :(得分:0)

首先,提供的链接中描述的问题与您使用XMLHttpRequest查询的URL相关。在GWT应用程序中,#可以出现在普通的GET请求中(当您打开页面时,即启动GWT应用程序时)。当GWT执行XMLHttpRequest请求时,它使用类似于以下的URL:

http://yourserver.com/context/com.yourcompany.SomeModule/someService

其中没有#,所以如果您有任何问题,则与此问题无关。

答案 2 :(得分:0)

我想我终于找到了问题所在。 我们的gwt应用程序作为iframe放在另一个HTML文件中,因此设置了gwt历史记录支持

<iframe src="javascript:''" id="__gwt_historyFrame" tabIndex='-1' style="position:absolute;width:0;height:0;border:0"></iframe>

必须在外部HTML而不是gwt中完成。 这个gwt脚本用于支持IE6和IE7等浏览器,这些浏览器没有实现onhashchange事件。

相关问题