私はあなたが一般的な援助を探していると仮定し、「私にコードを送ってください」ではなく「私を一般的な方向に向けてください」そしてそれに応じて応答します。
まず、あなたが求めているのはjavascript以上のものを必要とし、実際、あなたが思っているよりもはるかに複雑になるでしょう。検討:
ページを更新するときにタイマーが更新されないということは、タイマーを日付/時刻に関連付けるか、何らかの形の永続性が必要であることを意味します。使用する必要がある永続性には、Cookieとサーバー側の2種類があります。Cookieはユーザー固有のバージョンであり、大きなオーバーヘッドが発生します。これらは、更新間の妥当な一貫性を実現するために更新する必要があるほど頻繁に更新するようには設計されていません。サーバー側(同時にページにアクセスするすべての人が同じカウンターを取得する)は潜在的に実行可能ですが、それはサーバー側でページを動的にする必要があることを意味し、独立している必要がありますスレッドを使用してカウンターを更新します。ページとサーバーの同期を維持するには、ほぼ一定の非同期呼び出しを実行する必要があります。繰り返しますが、それは何かではありません」sはミリ秒のオーダーで実行されることを意味します。それを日付/時刻に結び付けること(繰り返しますが、誰もが同じになります)はクールであり、そのようなカウンターのほとんどが使用するものですが、別の問題が発生します。
タイマーを乱数だけ上げたいとおっしゃいました。残念ながら、これは、日付/時刻メソッドがあなたが行ったことを記録しないため、水からすぐに日付/時刻にそれを結び付けることを撃ちます。rand関数を呼び出して適切に更新することはできますが、更新の間に情報を保持する方法はありません。
基本的に、永続性をあきらめることができます。その場合、1〜4のrand関数を使用して、すべてをクライアント側で実行すると、すべてが正常に機能するか、カウントをあきらめることができます。ランダム性。この場合、日付/時刻に関連付けることができ、すべてが正常に機能します。または、Cookieまたはサーバー側のシェナニガンを使用して永続性を処理しようとすることができます。この場合、これは醜くなります。
カンマはフォーマットの問題であり、それほど難しくはありません。そのための簡単な解決策があると思います。そうでない場合でも、javascriptのすべてが文字列として処理され、番号を取得した後で手動でカンマを挿入できます。
カウントダウンではなくカウントアップも非常に簡単です。