Я пытаюсь понять объект истории HTML5. Вот простой пример, с которого я начал.
function addDialog(){
document.getElementById('d').style.display ='';
history.pushState({name:"changed"},"","#newURL");
}
window.onpopstate = function(e){
alert(e.state);
}
У меня есть div
с идентификатором d
, для которого свойство display
равно none
. При нажатии на ссылку я буду отображать div и изменять историю, чтобы загружать новый URL.
Когда я копирую и вставляю новый URL, происходит событие popstate
, и я получаю null
для e.state
.
Из того, что я понимаю, если я загружаю новый URL http://example.com#newURL
, e.state
должен указывать на объект, который я нажал с помощью pushstate.
Пожалуйста, исправьте меня, если я ошибаюсь, а также я хотел бы знать, когда будет заполнен e.state
.