Chrome で新しいタブを開きます (たとえば、 http: //google.comを開きます)。
URLをに変更する
testpage.htm
含むを開きますhistory.pushState({},"test","#lightbox");
testpage.htm#lightbox
Chrome の [戻る] ボタンを押すと、URL が に変更されます
http://google.com
。これは、1 つではなく 2 つ前の状態です。
firefox と msie10 はどちらもうまく動作するので、クロムの問題です。どうすれば修正できますか? 回避策はありますか?
前もって感謝します
(私の質問にもっと良いタイトルを付けて、私の英語を自由に修正してください)
ノート:
ステップ2でも使用できますwindow.location.hash = "#lightbox"
が、同じ問題が発生します
ステップ3では、コード内から戻るボタンをシミュレートできます。history.back()
この場合、URLは正しいものに切り替えられるtestpage.htm
ため、これはChromeのGUIの戻るボタンにのみ関連しています
私も試しました
window.addEventListener("popstate", function(ev){ ev.preventDefault(); });
window.addEventListener("hashchange", function(ev){ ev.preventDefault(); });
成功せずに:(
更新 2: History.jsを使用して同じことを行います