重複の可能性:
ページの読み込み、ページのリロード時に一度JavaScript関数を呼び出す方法、再度呼び出さないでください
カウントダウンタイマーをトリガーするjspページでjavascriptを呼び出したいです。ただし、ユーザーがページを更新した場合、タイマーをリセットしたくありません。残り時間から継続する必要があります。どうすればこれを達成できますか?
重複の可能性:
ページの読み込み、ページのリロード時に一度JavaScript関数を呼び出す方法、再度呼び出さないでください
カウントダウンタイマーをトリガーするjspページでjavascriptを呼び出したいです。ただし、ユーザーがページを更新した場合、タイマーをリセットしたくありません。残り時間から継続する必要があります。どうすればこれを達成できますか?
あなたのコメントでは、ページが読み込まれるたびに再起動しないタイマーが必要だと言っています。これは私がすることです...
ページが呼び出されtimer.jsp
、そこにタイマーのカウントダウンを開始するスクリプトがあるとします。したがって、私は次のことを行います...
timer.jsp
初めてページを生成するときは、タイマーが終了する日時を含むというsession
パラメーターを作成します。たとえば、日時がでタイマーが分単位の場合、値を保存します。TimerFinish
01/01/2012 10:00
25
01/01/2012 10:25
TimerFinish
値は既に存在します。これを使用して、タイマーが終了するまでの時間を計算できます。この値を次のように計算します。TimerFinish - currentDateTime
そのため、ユーザーが何をしても (ページを更新するなど)、タイマーは常に残り時間から開始され、単純に 25 分にリセットされることはありません。timer.jsp
ユーザーが をリロードすると、オブジェクトから既存の値を読み取り、それTimerFinish
をsession
使用して残り時間の正しい値を設定します。
JSP は、HTML を作成する動的な方法にすぎません。それで、あなたの質問は「ページの読み込み時にjavascriptを呼び出す方法は?」です。
そして答えは。
ブラウザがページを解析するときに、すべてのスクリプトが実行されます。これを試して:
<html>
<head>
<script>alert("from head");<script>
</head>
<body>
<script>alert("from body");<script>
</body>
</html>
ページの読み込みが完了したときにスクリプトを実行することもできます。多くの要素にはonload
イベントがあります。たとえばbody
要素。したがって、次のように言えます。
<body onload="alert('body is loaded')">
そのため、ボディのロードが完了するとアラートが表示されます。