どのようにしてリフレッシュボタンクリック(f5)を捕まえることができますか?
- 私がリフレッシュするとき(このアクションのとにかく) - 自分のlocalStorageをクリアする必要があります。
- URLまたはクローズページを変更すると、localStorageは彼の状態を保存する必要があります。
私は、このような問題を解決するいくつかのtopictを発見しました。主な結論はwindow.onbeforeunloadを使用することですが、同時に、このイベントはいつでも発生します(url/ctrl + shift + r/f5/ctrl + rなどを変更しても、ページを更新するときだけでなく)。
リフレッシュイベントのみを取得するチャンスはありますか?たとえば、URLと比較するためのいくつかの方法(現在およびどちらのユーザーが同じものであれば開くか)閉じるイベントを捕まえたり、URLイベントを変更したりせずに、リフレッシュイベントのみを捕捉する方法はありますか?
0
A
答えて
0
その意味では、あなたが望むものはありません。リフレッシュアクションはキャッチ可能ではありません。 しかし、あなたは、この回避策とその動作を実現することができます
if(self.window.name.indexOf("justAwordToNowisYourWindow")!=0){
self.window.name = "justAwordToNowisYourWindow";
alert("first Load");
}else{
alert("reload");
}
また、良いプラクティスとして、アプリケーションの複数のウィンドウが開いている場合は奇妙な行動を防ぐためにタイムスタンプを使用します。
var n = Date.now();
if(self.window.name.indexOf("justAwordToNowisYourWindow")!=0)
{
self.window.name = "justAwordToNowisYourWindow"+n;
alert("first Load");
}else{
alert("reload");
}
+0
私はこれについて考えていましたが、私のバージョンでは、beforeunloadイベントから値を返す必要があります。どのように私は理解することができます、私たちはこれを行うことはできません?または、その前に作業することについての私の誤解?私だけが戻り値をキャッチすることができればすべてが簡単になります))) –
+0
あなたはウィンドウの名前と返す必要がある値を使って、アンロード前のイベントでクッキーを作成できます。私たちが取り組むことができるビジネスルールの詳細については、こちらをご覧ください。 –
関連する問題
- 1. MDIチャイルドロードのイベントを初めて捕捉する方法はありますか?
- 2. Extjsイベントを捕捉する(コンボボックス)
- 3. Pivot_SelectionChangedでAutoSuggestBoxのイベントを捕捉する方法は?
- 4. クラスヘルパーでクラスのイベントを捕捉する方法は?
- 5. サイクル角2でイベントを捕捉する方法は?
- 6. StAX XML-parserで属性イベントを捕捉する方法は?
- 7. ContextNotActiveExceptionを捕捉せずに状態がアクティブかどうかを知る方法はありますか?
- 8. 複数の子Vueコンポーネント間でイベントを捕捉する方法
- 9. OL3のソースにドローエンドを追加した後のイベントの捕捉方法は?
- 10. keydownイベントを捕捉せずに修飾キーが押されているかどうかを確認する方法はありますか?
- 11. ボタン別のクラスで捕捉されるイベントまたはコマンドをトリガーする
- 12. アプリケーションを停止するために捕捉するイベントはどれですか?
- 13. ACTION_DOWNを傍受しなかったビューでACTION_UPを捕捉する方法はありますか?
- 14. Aspectjは春のフレームワークですべてのイベントを捕捉しませんか?
- 15. イベントをキャッチして閉じるイベントとリフレッシュイベントを区別する方法
- 16. backbone.jsプレーンな「変更」イベント以外のすべてのイベントをどのように捕捉できますか?
- 17. 捕捉セル列のクリックと実行イベント
- 18. PHPで外部イベントを捕捉するには?
- 19. NSControlのいくつかのイベントを迅速に捕捉する方法
- 20. Ionic2:Modalコンポーネント(ModalControllerから作成)内のイベントを捕捉する方法は?
- 21. MediaControllerのポーズ/再生ボタンをクリックしたときのイベントの捕捉方法
- 22. はCombobox_ChangeイベントVBAはこの1つは私を捕まえた
- 23. Polymer 2でFirefox上のWebコンポーネントでPointerイベントを捕捉する方法は?
- 24. マルチエラー環境でのカールエラー、つまりタイムアウトの捕捉方法
- 25. eventmachineとの接続解除イベントを捕捉する(ping + timeout?)
- 26. HTML5オーディオで 'stop'イベントを捕捉して何かをするには?
- 27. event.keyCodeを捕捉して別のkeyCodeに変更するには?
- 28. SaxParser.parseでレスポンスコードを捕捉する方法
- 29. どのようにしてctrl-cイベントを捕捉できますか? (C++)
- 30. 構文エラーはJavaScriptに捕捉される可能性がありますか?
のhttp:/ /stackoverflow.com/questions/18457797/how-to-know-whether-refresh-button-or-browser-back-button-is-clicked-in-firefox は役に立ちますか? –
[戻るボタンのクリックをブラウザで検出する]の可能な複製(0120-919-03) – CodeMonkey
いいえ、私はこれを読んでいますが、解決法は私を助けませんでした。主な理由は、beforeunloadイベント、魔女のすべてのイベントをキャッチすることが含まれています。私の声では、私はf5またはリフレッシュボタンだけが必要です。 –