[英]HTML5 History API Back Button
我正在使用ajax調用來更新頁面的一部分,用於搜索功能。 搜索時,我會更新網址。 示例:mysite.com/products變為mysite.com/products?search=blabla
但是,當我按下“后退”按鈕時,只有網址會更改,而頁面的內容不會更改。
這是我用來設置歷史記錄的功能:
function setHistory(data, url) {
var search = $("#Search").val();
url = url.replace('search_input', search);
history.pushState(data, "", url);
}
data
是頁面上更改的內容, url
是要推送到歷史記錄的新URL。 我做錯了什么嗎? 如果使用后退按鈕,頁面是否應該自動更新? 它不適用於chrome和IE 10。
您需要偵聽popstate
事件並將頁面改回。
addEventListener('popstate', function (event) {
event.state; // this contains the state data from `pustState`. Use it to decide what to change the page back to.
}
另請參見MDN 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.