2016-07-07 12 views
0

私はユーザーがモーダルウィンドウとして開くことができるフォームを持っています。私は彼らがウィンドウをブラウズして閉じるときを検出できるようにしたいと思います。ブラウザのモーダルを閉じて、フォワード状態を消去しますか?

私はそれが働いて持っているが、いくつかの問題があります。

// in modal.open(): 
window.history.pushState(null, null); 

// in modal.close(): 
window.history.back(); 

これは、彼らがその後、前方に閲覧することができますし、何も起こらない副作用で動作...これは極端なケースで、それはおそらくdoesnのあまりにも問題はありませんが、それは私を悩ましています。

ブラウズ時に現在の状態を "消去"するにはどうすればよいですか?彼らはそれに前進することはできません。

答えて

0

チェックこのフィドル、ユーザーは、この方法は、逆の問題を残して前方

https://jsfiddle.net/5y6jL0an/

history.pushState(null, null, 'no-back-button'); 
window.addEventListener('popstate', function(event) { 
    history.pushState(null, null, 'no-back-button'); 
}); 
+0

行くことはできません。無駄な前向きな歴史の代わりに、無駄な歴史があります。つまり、彼らが戻ってくるのを見たいのであれば、2回ヒットする必要があります。 – Zuko

関連する問題