週末時計ブログパーツ [プログラム三昧]
週末まで 秒
終末まで 秒
3月末まで 秒
ご希望にお応えして、「週末時計」ブログパーツを作りました。 IEでも動くと思う。たぶん。
週末時計の使い方
このブログパーツは、JavaScriptファイルをあらかじめ呼び出しておいて、別のJavaScriptコマンドから呼び出します。
<script type="text/javascript" src="http://noritan.org/js/RemainTimer.js"></script> <p>週末まで <script type="text/javascript"> new org_noritan_WeekendTimer(5, 17, 45); </script> 秒</p>
呼び出すときに三つのパラメータを指定します。 最初は、就業最終曜日です。 週末がいつになるか人によって様々であるケースを考えて、以下の値を指定します。
the day of the week | 就業最終曜日 |
---|---|
0 | 日曜日 |
1 | 月曜日 |
2 | 火曜日 |
3 | 水曜日 |
4 | 木曜日 |
5 | 金曜日 |
6 | 土曜日 |
二つ目と三つ目が、就業終了時間の時と分を表します。 このパラメータも人によって様々だと思います。 24時間制であらわしてください。 この例だと、「金曜日17:45」までの残り時間を教えてくれます。
タイマが切れる時間は、このスクリプトが実行されたときに設定されます。 週に一度は、リロードして更新してください。
終末時計もリニューアル
前回紹介した「終末時計」もリニューアルしました。 呼び出し方は、以前のものとは互換性がありません。
<script type="text/javascript" src="http://noritan.org/js/RemainTimer.js"></script> <p>終末まで <script type="text/javascript"> new org_noritan_WorldendTimer(); </script> 秒</p>
呼び出すJavaScriptファイルは、共通です。 そのため、一つのページに一回だけ書いてやればよいはずです。 逆に二回呼び出したらどうなっちゃうんだろ?
スーパークラス、残り時間時計
実は、上の二つの時計には、スーパークラスがいます。 それが、RemainTimerです。
<script type="text/javascript" src="http://noritan.org/js/RemainTimer.js"></script> <p>3月末まで <script type="text/javascript"> new org_noritan_RemainTimer(Date.parse("31 Mar 2009 23:59:59") / 1000); </script> 秒</p>
与えるパラメータは、UNIX紀元の秒数です。 このスクリプトでは、「31 Mar 2009 23:59:59」までの残り秒数を表示してくれます。
補足
この記事のために、当初作成していたプログラムを Micro$oft の InternetExplorer で表示させるとあまりにもひどい結果となってしまいました。 あまりのひどさ加減に InternetExplorer でもエラーが発生しないように変更してしまったほどです。
JavaScript ファイルのコメント箇所を見てもらうとわかるのですが、 InternetExplorer では、 Window.setInterval メソッドの第二書式をサポートしていません。 そのため、クラス名ベタ書きのかなり美しくないプログラムになってしまいました。 このぐらい、サポートして欲しいよな。
参考文献
Javascript: The Definitive Guide (Definitive Guide)
- 作者: David Flanagan
- 出版社/メーカー: Oreilly & Associates Inc
- 発売日: 2006/08
- メディア: ペーパーバック
JavaScriptのプログラミングは、本当に久々なので、この本とにらめっこになりました。
Javascript: The Definitive Guide
- 作者: David Flanagan
- 出版社/メーカー: Oreilly & Associates Inc
- 発売日: 1998/07/15
- メディア: ペーパーバック
私が持っているのは、 JavaScript 1.2 対応の第3版(1998年発行)です。
日本語版でさえ、第5版になってる。
あー早く週末来ないかな、、、ちっ!、まだ33万秒も有るよ。
おまけ
「週末時計の使い方」
「週末時計もリニューアル」
???
by hamayan (2009-02-16 21:47)
週末まで秒でカウントすると長く感じるのは気のせいかな?
by 肉球 (2009-02-17 08:46)
返答が遅くなりました。最近、花粉症の薬を服用しているせいで、眠くて眠くて。いえ、決して、深酒のせいではありませんから。
hamayanさん、
誤植は、このコメントを見つける前に修正しました。
肉球さん、いらっしゃいませ。
hamayanさんの要望におこたえして作成した週末時計ですが、秒数で表現すると週末がすごく遠くに感じられます。逆に、たまに見たときにグッと数字が減ってると達成感はあります。
by noritan (2009-02-18 08:30)
WeekendTimer を継承するクラスで update メソッドを入れ替えると、画像表示型カウンタができるじゃないか。
と、気がついてプログラムを作成しましたが、サーバに対して激しく画像ファイルの要求が発生してしまうので、公開は取りやめました。ブラウザがキャッシュしてくれれば、こんなことにはならないはずなんだけどな。
by noritan (2009-02-18 12:28)
ああああ、マイナスだぁ。
by hamayan (2009-02-20 22:42)
来週から数字が減っていくのを励みにしてがんばろう。 週末時計使わせていただきました。
今週は、花粉症の症状が急に出て大変でした。例年だともう少し穏やかにスタートするので心の準備ができるのですが。今年は激しい。
by asupiyopapa (2009-02-21 00:46)
hamayanさん、
マイナスになるまで働いてはいけません。
あすぴよパパさん、
ご利用いただき、ありがとうございます。
JavaScript を改めて調べていたら、大幅に使い方を変更したくなってきました。互換性を持たせたバージョンアップ、どうしたらいいんだろうな。
by noritan (2009-02-21 12:11)