У меня есть одностраничное мобильное приложение, разработанное с помощью Backbone и Zepto.
Корректно работает с кнопками назад/вперед в браузере.
Когда пользователь переходит на страницу, новоесодержимое скользит справа, а староесодержимое скользит влево (и выходит из области просмотра). Я хочу, чтобы то же самое произошло, если пользователь нажмет кнопку браузера "вперед". Это все работает.
У меня есть класс, который я добавляю к элементу body navigation-back
, который изменит это поведение, поэтому, когда пользователь переходит назад с помощью кнопки «Назад» в браузере, он видит скользящее содержимое backслева, а остальное содержимое скользит справа. В основном прямо противоположно тому, чтобы идти вперед.
Мне нужно определить, перемещается ли пользователь назад, чтобы я мог вызвать альтернативное поведение. Я попытался реализовать свой собственный стек истории, но столкнулся с множеством проблем, когда иногда он помечает переход вперед как навигацию назад, что разрушает визуальную подсказку. Теперь он превратился в кучу хаков и, вероятно, только смутил бы меня, если бы я опубликовал его.
Как лучше всего реализовать собственный стек истории, чтобы я мог определять, перемещается ли пользователь вперед или назад в контексте одностраничного мобильного приложения Backbone?