1
history.pushState
を使用して、要求のページの内容を変更しています。戻るボタンをクリックすると、以前の状態に戻ることができます
history.pushState
の後には、ブラウザの進むボタンが無効になっているので、クリックされるボタンは間違いなく戻るボタンになります。
私はpushStateの前にページのメイン状態に戻っていきたいと思います。メイン州の内容を取得するためにajaxリクエストを使用しますが、ブラウザのURLをメインURLに戻すにはどうすればいいかという問題があります。私はいくつかの問題のためにこれのためにpushStateメソッドを使いたくありません。
私はpushStateを持っているかどうかを知るために、他ではajax成功した後に値を1つ増やします。
var mainState;
var pushed = false;
$('a').click(function(){
$.ajax({
url: "/path/to/content",
success: function(data){
$('div').html(data);
history.pushState('state', 'title', 'url');
mainState ++;
pushed = true;
}
})
})
window.onpopstate(function(){
if(pushed){ //knowing fully well that the forward button is disabled
// take it back to the main state
history.go(-mainState);
}
})
のはmainStateが3であり、私が代わりにmainStateに行くの戻るボタンをクリックし、それはmainStateに私を取るとしましょう - 3
誰もが、私はこれを行うことができます知ってください!