Firefox では、各 document.write() の後に新しい履歴エントリが作成されるため、ユーザーが戻るボタンを押して履歴に戻るときにページの読み込み時に document.write() が呼び出されると、Firefox は document.write( を実行する現在のページに移動します。 )再び別の履歴を作成するため、もう一度戻るボタンを押しても役に立たず、彼が望む場所に連れて行ってくれます
簡単な回避策は次のとおりです。
function onbeforeunload(e)
{
setTimeout(function() { window.history.go(-2); }, 0);
}
window.addEventListener("beforeunload", onbeforeunload, true);
しかし、ユーザーがリンクに移動したり、アドレスバーにアドレスを入力してそこに移動したりすることはできません。Firefoxを修正する別の方法はありますか?
より良い方法は、onpopstate
代わりにイベントを使用することですが、document.write() の後に firefox では機能しません。
いいえ、ここでは document.write()を使用する必要があります。