2009
08-02
09:02
2009-08-02 09:17 追記
Firefoxでブックマークレットをクリックして時間指定後,「false」とか表示されるのを修正しました.
Firefoxでブックマークレットをクリックして時間指定後,「false」とか表示されるのを修正しました.
はじめに
ふと気になったので,指定した時間に何らかの処理をさせるスクリプトを書いてみました.
ソースコード
(function (dt,y,m,d,hh,mm,ss) { try { if( /^\s*$/.test(dt) ) { throw(new Error()); } dt = dt.split(/[-: ]/); } catch(e) { alert('Canceled or Error.'); return false; } window._R = function (s) { return (s || '0').replace(/^0+/,'') || '0'; }; y = _R(dt[0]); m = _R(dt[1]); d = _R(dt[2]); hh = _R(dt[3]); mm = _R(dt[4]); ss = _R(dt[5]); window._D = new Date(); if( _D.getFullYear() == y && _D.getMonth()+1 == m && _D.getDate() == d && _D.getHours() == hh && _D.getMinutes() == mm && _D.getSeconds() == ss ) { // ここに実行したい処理を書く alert( 'Alert!' ); return true; } else { var _f = arguments.callee; window._T = setTimeout(function () { _f([y,m,d,hh,mm,ss].join('-')); }, 1000); return false; } return false; })(prompt('datetime? [ex. 2009-08-02 07:30:00]'));
ブックマークレット
ブックマークレットにしてみました.
なお,ブックマークレットの作成には,こちらのツールを利用させていただきました.
ちなみに注意したい点がひとつ./[ ]/ のような半角スペースにマッチさせる正規表現を利用した場合,このスペースが削除されてしまうため,生成後に入れ直す必要があります.
おわりに
なんか1秒くらいズレますが,まぁ気にしないでくださいw
処理部分に,
- Twitter API を利用してつぶやきをポストする
- Macの
sayコマンドを呼び出すようなスクリプトへリクエストを送る
のようなものを書けば,少しは幸せになれそうですね.




初めまして、有益な情報ありがとうございます。
すみません、質問があるのですが、
mp3ファイルを再生したい場合、どの様に記述すれば良いでしょうか?