У меня есть приложение Flex, которое я создал. Он использует класс BrowserManager
для отслеживания изменений в #
части URL-адреса. Когда в хэш вносятся изменения, мое приложение обновляется соответствующим образом, так что вы можете напрямую ссылаться на состояние приложения. Также внутри моего программирования, когда пользователь что-то щелкает, все, что я делаю, это использую BrowserManager
для обновления #
, а затем мой слушатель применяет правильные изменения после его завершения. Я считаю, что это лучший способ сделать это во Flex.
Хотя у меня есть некоторые проблемы. При использовании кнопки «Назад» в FF или IE она «застревает». например, если хэш похож на #state4
, нажатие кнопки "Назад" приведет вас к #state3
, а затем #state2
, но иногда застревает там, где вы можете быть #state3
, нажмите кнопку "Назад", вы увидите, как она быстро мигает до #state2
, затем вернитесь к #state3
, не давая вам пойти назад в вашей истории.
Теперь в Chrome еще хуже. По мере прохождения через приложение хэш #
обновляется, и поэтому приложение обновляется (доказывая, что приложение может видеть изменения в хеш-коде, поскольку это единственный способ обновления). но когда вы нажимаете кнопку «Назад», хэш #
возвращается в свое предыдущее состояние, но мое приложение не работает так, как будто оно не знает, что хеш меняется.
Я считаю это очень странным и не знаю, что с этим делать. Мне было интересно, испытал ли это кто-нибудь еще или знает, в чем может быть проблема.
Чтобы увидеть его в действии, перейдите сюда и перейдите в конструктор (он спросит выберите тип ювелирных изделий, металл и т. д.) несколько раз, пока не увидите большую красную кнопку добавить в корзину, затем попробуйте использовать кнопку возврата, чтобы вернуться на эту страницу.