Я пытаюсь реализовать HTML5
history feature для выполнения загрузки содержимого страницы AJAX. До сих пор мой JS выглядит следующим образом:Повторное использование состояния истории HTML при нажатии браузера на предыдущие/следующие кнопки
// saving current page to history
var current_url = "page1"
var page_content1 = $('body').html();
history.pushState({page_content: page_content}, current_url, current_url);
// loading new page with AJAX
var new_url="page2"
$.getJSON(new_url,get_data,function(data){
$('body').html(data.page_content);
var page_content2 = $('body').html();
history.pushState({page_content: page_content2}, new_url, new_url);
});
- OK: когда JS выполняется содержание «page2» правильно загружена с помощью AJAX в body
и браузер URL
изменяется от «page1» в "страница 2".
- OK: при нажатии на кнопку previous
браузера, браузер URL
изменяется обратно от «page2» до «page1»
- NOT OK: однако при нажатии кнопки previous
браузера, содержимое страницы является не изменилось на то, что раньше было для «page1».
В: Какие события следует привязать к предыдущим/последующим кнопкам браузера, и какой метод history
следует использовать для извлечения данных состояния после нажатия этих кнопок?
лучше это поддержка также html5, что лучше спросить? – ucefkh