我想在我的gwt应用程序中支持深层链接。例如。如果收到的请求如http://myhost/myapp/#deeplink123我想用“123”做一些事情(如果你知道如果收到没有哈希的http://myhost/myapp/deeplink123则会重新加载漏洞网站)。我将历史框架添加到我的start html网站和我的入口点类中的值更改处理程序:
<iframe src="javascript:''" id="__gwt_historyFrame" style="width:0;height:0;border:0"> </iframe>
History.addValueChangeHandler(new ValueChangeHandler<String>() {
public void onValueChange(ValueChangeEvent<String> event) {
String token = event.getValue();
// do something with token
});
这在firefox中工作正常,但在Internet Explorer中,如果在浏览器地址栏中输入了深层链接,则不会触发onValueChange-Event。
你有什么想法我可以识别IE中的深层链接吗?
提前致谢 - Max
答案 0 :(得分:0)
您需要在应用程序History.fireCurrentHistoryState()
的末尾调用onModuleLoad
,以通知历史记录处理程序初始应用程序状态。
答案 1 :(得分:0)
如果我换行,它在IE8中有效 [set-property name =“user.agent”value =“ie6,gecko1_8”] 至 [set-property name =“user.agent”value =“ie8] 在app.gwt.xml文件中。
但是只有在主html网站中添加类似[!doctype html]的文档类型声明。这会导致我的应用程序中出现一些光学问题,例如错误的大小,边距和颜色,因此还有很多工作要做。