私はsetTimeout()
を呼び出すなど、さまざまなJavaScriptコードを実行するページを持っています。ユーザーがリンクをクリックして別のページに移動すると、このページのjavascriptはいつ実行されるのでしょうか?したがって、setTimeoutによって呼び出されるコードは呼び出されなくなります。例えばリンクがクリックされた後、いつJavaScriptでページが実行されなくなるのですか?
- とすぐにリンクが(私はこれは間違っている知っている)をクリックすると
- ブラウザで新しいページ
- 他のいくつかのポイントを受信を開始?
これは、さまざまな主要なブラウザで異なりますか?
背景
私は主に関心のためにこれを知っているのではなく任意の特定の問題を解決したいです。私がこれについて考えるように促した問題は、ユーザーがページ上の特定のリンクをクリックしたときに何かしたいことです。私はajax呼び出しを実行して結果を処理したいが、ページがアンロードされる前に終了してもそれほど心配しない。だから私はリンクのクリックでsetTimeout()を発生させ、その後私はそれが終了しますが、私はそれができない場合は幸運だ。私はどんな状況でうまくいくのだろうかと思った。その問題に対する他の解決策があるかもしれませんが、私は問題の解決策を知りたくありません。
おそらく[onunloadイベント](https://developer.mozilla.org/en-US/docs/DOM/window.onunload)の直後ですが、それはなぜあなたにとって重要なのですか? –
_どのブラウザですか? –
*アクティブタイマー*( 'setTimeout'が追加されます)は[ドキュメントのクリーンアップのステップをアンロード]中にクリアされます(http://www.w3.org/TR/html5/browsers.html#unloading-document-cleanup -steps)は、(他のものの中で)['unload document procedure'](http://www.w3.org/TR/html5/browsers.html#unload-a-document)から呼び出されます。しかし、正確にこれらが[ナビゲーションプロセス](http://www.w3.org/TR/html5/browsers.html#navigating-across-documents)中に呼び出されるのかどうかは分かりません – Bergi