フォーカスが input か textarea にあるときはその最後にタイムスタンプを挿入し、それ以外ではタイムスタンプをプロンプトで出すブックマークレットを書いてみた。
シンプルな日時のものは、「2010-11-18 0:19」 という表示。
ISO 8601 は、「2010-11-17T15:20:17.694Z」 のような表示。
ISO 8601 版は、toISOString を使っているので、ECMAScript 5 に対応している Firefox, Google Chrome など最近のブラウザでのみ動作する。(IEは9以降?) タイムゾーンは、ECMAScript 5 の仕様で UTC のはず。ただしブラウザによってミリ秒があったりなかったり表記が変わる。
シンプル版
ブックマークレットの内容
(function(){ var d = new Date(); var dt = d.getFullYear() + '-' + (d.getMonth()+1) + '-' + d.getDate() + ' ' + d.getHours() + ':' + d.getMinutes(); var e = (document.activeElement || window.getSelection().focusNode); if (e && e.tagName.toLowerCase()=='textarea' || e.tagName.toLowerCase()=='input') { e.value = e.value + '' + dt; } else { var x = prompt('', dt); } })();
ブックマークレット→ timestamp
ISO 8601 形式
ブックマークレットの内容
(function(){ var d = (new Date()).toISOString(); var e = (document.activeElement || window.getSelection().focusNode); if (e && e.tagName.toLowerCase()=='textarea' || e.tagName.toLowerCase()=='input') { e.value = e.value + '' + d; } else { var x = prompt('', d); } })();
ブックマークレット→ timestamp