我有一个我构建的Flex应用程序。它使用BrowserManager
类来侦听URL #
部分的更改。当对哈希进行更改时,我的应用程序会相应地更新,因此您可以直接链接到应用程序的状态。在我的编程中,当用户点击某些内容时,我所做的只是使用BrowserManager
更新#
,然后我的听众将在完成后应用正确的更改。我相信这是在Flex中执行此操作的最佳实践方式。
我有一些问题。在FF或IE中使用“后退”按钮时,它会“卡住”。例如,如果哈希类似于#state4
,则点击后退按钮会转到#state3
然后#state2
,但有时会卡在#state3
点击后退按钮的位置,看到它闪烁到#state2
真快,然后再回到#state3
,阻止你在历史记录中再回过头来。
现在在Chrome中它更糟糕。当你通过应用程序时,哈希#
被更新,因此应用程序更新(证明应用程序可以看到哈希中的更改,因为这是更新的唯一方式)。但是当你单击后退按钮时,散列#
会回到之前的状态,但是我的应用程序并不像是不知道散列正在改变。
我觉得这很离奇,不知道该怎么做。我想知道是否有其他人经历过这个或知道可能是什么问题。
要查看它的操作,请转到here并导航构建器(它会要求您点击珠宝类型,金属等)几次,直到您看到大红色添加到购物车按钮,然后尝试使用后退按钮返回此页面。