嗨,我正在使用GWT及其通过“历史”课程支持历史的标准方式.它非常方便,但如何从网址中删除锚点部分?例如:
我的基本网址:
http://www.mysuperwebsite.com/myapp
使用应用程序时,我会移动到添加新历史记录项的位置.
在代码中:
History.newItem("funnygame");
结果:
http://www.mysuperwebsite.com/myapp#funnygame
我再换一次地方:
在代码中:
History.newItem("notsofunnygames");
结果:
http://www.mysuperwebsite.com/myapp#notsofunnygames
然后我想回到我的主页(http://www.mysuperwebsite.com/myapp).
什么应该放在代码中?:
????
回到:
http://www.mysuperwebsite.com/myapp
有没有可以实现我的目标的标准方式?
如果我添加这样的东西:
History.newItem("");
要么
History.newItem(null);
网址将成为
http://www.mysuperwebsite.com/myapp#
这不是我喜欢的,我需要它没有尖锐的性格.
解决方法
如果您使用History.newItem(null);将触发一个新事件.
因此,您将切换主页:
http://www.mysuperwebsite.com/myapp#
因此,您将切换主页:
http://www.mysuperwebsite.com/myapp#
最后有没有#是一回事,我错了吗?
编辑:
... // Get the last part of the url and remove #token String s = Location.getHref().substring(Location.getHref().lastIndexOf("/")); s = s.substring(0,s.indexOf("#")-1); setToken(s); ... protected native void setToken(String token) /*-{ $wnd.history.pushState({},'',token); }-*/;