日付:時刻をはっきり表示させる
del.icio.us にポストしたエントリは "1 day ago" とかになってしまって 何年何月何日何時何分何秒 にポストしたのかはっきりわからなくなる。 それをはっきりさせようということで,
// ==UserScript== // @include http://del.icio.us/* // ==/UserScript== (function() { var date = document.evaluate( './/span[@class="date"]', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null ); for(var i=0,len=date.snapshotLength;i<len;i++) { date.snapshotItem(i).innerHTML = date.snapshotItem(i).getAttribute('title').replace(/(\d{4}-\d{2}-\d{2})T(\d{2}:\d{2}):\d{2}Z/, "$1 $2"); } })();
ネタ元
ブックマークレット 02 - (ノヴム・オペラヌム)
誰か時間をJSTに変換してくれないかなーとか言つてみたり - worldcup1962
おぉそうだった。日本時間じゃねぇ。
9時間足すだけでいいのかなぁ。
// ==UserScript== // @include http://del.icio.us/* // ==/UserScript== (function() { // From "Date Extras Javascript Library" (http://www.xml-blog.com/articles/2005/09/16/date-extras-javascript-library) // var HOURS_CF = 3600000; // Date.prototype.addMilliseconds = function(ms){ // return new Date(new Date().setTime(this.getTime() + (ms))); //} //Date.prototype.addHours = function(h){ // return this.addMilliseconds(h * HOURS_CF); //} var date=document.evaluate( './/span[@class="date"]', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null ); for(var i=0,len=date.snapshotLength;i<len;i++) { date.snapshotItem(i).innerHTML = date.snapshotItem(i).getAttribute('title').replace( /(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})Z/, function($0, $1, $2, $3, $4, $5, $6) { return new Date(Date.UTC($1, $2 - 1, $3, $4, $5, $6)); } ); } })();
9時間足す部分は, Date Extras Javascript Library の一部を拝借。
GMTなんちゃらも表示されるけど気にしない
修正 : 今3月じゃねーよ
よくよく考えると, "02" とかの文字列を渡しているわけだがうまいこと処理してくれてる。