BLOG

リロード無しでアドレスバーのURLの書き換え

| JavaScript

一時期、リロードせずにページを遷移するというのが流行ってたときがありましたけど、あれってどうやるんだろうなぁってさらっと思ってたんです。
それ用のプラグイン的なJavascriptをつかえばできるんですけど、それでは原理はわからないって感じで、ちょっと放置してる間にマイブームが去っていきましたw
まぁ、今回はすこし調べる機会があり、わかったのでここで((φ(´ω`*)メモメモ

URLの書き換える

history.pushState(state, title, url);

っていうのを使うみたい

// /xxx/kokokara/ → /xxx/kokohe/
history.pushState(null, null, 'kokohe');

// /xxx/kokokara/ → /kokohe/
history.pushState(null, null, '/kokohe');

使い方はこんな感じみたい
URL変えるだけならこれでOKみたいです。

他の方法も紹介

// URLの履歴を追加する
history.pushState(state, title, url);

// URLの履歴を置き換える
history.repalceState(state, title, url);

追加する方はブラウザバックでURLは戻るみたいです。
置き換えは戻らない的なことでした。