2013-03-04 3 views
0

Я использую метод history.pushstate для добавления истории в браузер и добавил историю в браузере следующим образом.HTML5 history.pushState

 history.pushState("", "",myurl); 

История добавлены в браузере правильно. (Когда история браузера щелкнул правильно страница получать загружена.)

Но когда я нажимаю кнопку назад в браузере не вернуться ..

(т. Е. Я использую функцию hashchange для отображения различного содержимого на странице).

Для этого требуется еще один щелчок, чтобы вернуться назад (например, два щелчка кнопки назад, чтобы вернуться к предыдущей странице, добавленной в историю).

Как я могу сделать это обратно только одним нажатием кнопки «Назад».

+0

Вот такой вопрос для учебника с использованием истории HTML5: [Хороший учебник по использованию API истории HTML5 (Pushstate?)] (Http://stackoverflow.com/questions/4015613/good-tutorial-for-using-html5- История-апи-PushState). Как говорится в ответе, вам следует использовать ['History.js'] (https://github.com/balupton/History.js). – mc10

ответ

0

Не использовать hashchange для просмотра истории; это только для изменения фрагмента. Используйте popstate.

window.addEventListener('popstate', function() { 

}); 

http://jsfiddle.net/ExplosionPIlls/NkEdg/

0

я нашел рабочий раствор следующим образом.

Использование заменителя вместо pushstate решило проблему.

Pushstate добавляет историю, но не указывает верхнюю часть стека. Поэтому сначала щелкните одну и ту же страницу из загруженной истории и в следующий клик загрузите предыдущую страницу.

Смежные вопросы