はじめに
ページA → ページB → ページC → ブラウザバックしてページB
のような画面遷移を行ったと想定します。
この時に、ページBでブラウザバック直前のページであるCのurlを取得したいです。
document.referrerでは取得出来ない?
遷移元のurlを取得するにはdocument.referrer
を使用すれば取得可能です。
しかし、ブラウザバック直後では想定しているurlは取得出来ません。
ページA → ページB → ページC → ブラウザバックしてページB
において。
ページBでdocument.referrer
からリファラを取得すると、ページAのurlが取得されてしまいます。
【解決】 sessionStorageに保存する
ページCで現在のurlをsessionStorageへセットし、ページBでそれを取得します
page-C.js
sessionStorage.setItem('url', window.location.href);
page-B.js
let url = sessionStorage.getItem('url');
以上です