【发布时间】:2014-09-10 01:37:12
【问题描述】:
GWT 历史记录:com.google.gwt.user.client.History 有一个 back() 方法,可以将您带到上一个历史记录令牌。但是有没有办法获得以前历史令牌的价值?甚至两步以前的历史令牌?
我检查了 back() 方法的实现以获得一些快速的线索,但这都是 JS 原生的东西!
【问题讨论】:
标签: gwt gwt-history
GWT 历史记录:com.google.gwt.user.client.History 有一个 back() 方法,可以将您带到上一个历史记录令牌。但是有没有办法获得以前历史令牌的价值?甚至两步以前的历史令牌?
我检查了 back() 方法的实现以获得一些快速的线索,但这都是 JS 原生的东西!
【问题讨论】:
标签: gwt gwt-history
使用历史类?不。出于安全原因,Javascript 不会公开此信息。您不应该能够窥探用户的浏览器历史记录。也就是说,您可以使用历史嗅探技巧并做到这一点,但这些都是一种或另一种形式的技巧,据我所知,不是很准确。
最好的办法是手动跟踪历史状态。维护一堆已访问状态,并随着每个令牌更改“推送”并使用后退按钮“弹出”。然后你可以看到你以前甚至更远的地方。
如果您不仅要更改令牌,还要更改站点/应用程序中的页面,请考虑将页面堆栈粘贴到 LocalStorage 中。通过这种方法,您甚至可以跟踪刷新和访问之间的历史记录。
【讨论】:
我刚问了同样的问题,但答案其实不一样:你可以通过注册来获得历史条目的通知 a change handler
如the official doc中所述
【讨论】: