JavaScript
GitHub
bookmarklet
3
どのような問題がありますか?

この記事は最終更新日から1年以上が経過しています。

投稿日

GITHUBの日付の表示を相対表示から絶対表示に変換するブックマークレット

GITHUBの日付の表示が...4days agoみたいな相対表示なのを、
絶対表示で確認するために設定などを探していた時に見つけたブックマークレット(https://qiita.com/kobake@github/items/06dcc5b6135fd38adeb7)が古くて動かなくなっていたため、新しく作りました。

javascript:var%20times%3Ddocument.querySelectorAll('relative-time')%3Bfor(var%20i%3D0%3Bi%20%3C%20times.length%3Bi%2B%2B)%7Bvar%20date%3Dnew%20Date(times%5Bi%5D.getAttribute('datetime'))%3Bvar%20dateString%3D''%3BdateString%20%2B%3Ddate.getFullYear()%2B%20'%2F'%3BdateString%20%2B%3D('0'%20%2B(date.getMonth()%2B%201)).slice(-2)%2B%20'%2F'%3BdateString%20%2B%3D('0'%20%2B%20date.getDate()).slice(-2)%2B%20'%20'%3BdateString%20%2B%3D('0'%20%2B%20date.getHours()).slice(-2)%2B%20'%3A'%3BdateString%20%2B%3D('0'%20%2B%20date.getMinutes()).slice(-2)%2B%20'%3A'%3BdateString%20%2B%3D('0'%20%2B%20date.getSeconds()).slice(-2)%3Btimes%5Bi%5D.innerText%3DdateString%3B%7Dvoid(0);

元のスクリプト

var times = document.querySelectorAll("relative-time");
for (var i = 0; i < times.length; i++) {
  var date = new Date(times[i].getAttribute("datetime"));
  var dateString = "";
  dateString += date.getFullYear() + "/";
  dateString += ("0" + (date.getMonth() + 1)).slice(-2) + "/";
  dateString += ("0" + date.getDate()).slice(-2) + " ";
  dateString += ("0" + date.getHours()).slice(-2) + ":";
  dateString += ("0" + date.getMinutes()).slice(-2) + ":";
  dateString += ("0" + date.getSeconds()).slice(-2);
  times[i].innerText = dateString;
}
ユーザー登録して、Qiitaをもっと便利に使ってみませんか。
  1. あなたにマッチした記事をお届けします
    ユーザーやタグをフォローすることで、あなたが興味を持つ技術分野の情報をまとめてキャッチアップできます
  2. 便利な情報をあとで効率的に読み返せます
    気に入った記事を「ストック」することで、あとからすぐに検索できます
ユーザー登録ログイン
kyonsi

コメント

(編集済み)

最近GitHubを使うようになって日時が相対表示なことを不便に思っていたので大変助かりました。
一点、日時表示されるタグは"relative-time"の他に"time-ago"もあるようでしたので、私なりに修正してみました。

コード

["relative-time", "time-ago"].forEach(function(tag) {
    var times = document.querySelectorAll(tag);
    for (var i = 0; i < times.length; i++) {
        var date = new Date(times[i].getAttribute("datetime"));
        var dateString = "";
        dateString += date.getFullYear() + "/";
        dateString += ("0" + (date.getMonth() + 1)).slice(-2) + "/";
        dateString += ("0" + date.getDate()).slice(-2) + " ";
        dateString += ("0" + date.getHours()).slice(-2) + ":";
        dateString += ("0" + date.getMinutes()).slice(-2) + ":";
        dateString += ("0" + date.getSeconds()).slice(-2);
        times[i].innerText = dateString;
    }
});

ブックマークレット

javascript:["relative-time","time-ago"].forEach(function(tag){var times=document.querySelectorAll(tag);for(var i=0;i<times.length;i++){var date=new Date(times[i].getAttribute("datetime"));var dateString="";dateString+=date.getFullYear()+"/";dateString+=("0"+(date.getMonth()+1)).slice(-2)+"/";dateString+=("0"+date.getDate()).slice(-2)+" ";dateString+=("0"+date.getHours()).slice(-2)+":";dateString+=("0"+date.getMinutes()).slice(-2)+":";dateString+=("0"+date.getSeconds()).slice(-2);times[i].innerText=dateString}});void(0);

Windows版ChromeとFireFox(security.csp.enableをfalseにした状態)で動作を確認しました。

ご参考までに。

1
どのような問題がありますか?
あなたもコメントしてみませんか :)
ユーザー登録
すでにアカウントを持っている方はログイン
3
どのような問題がありますか?
ユーザー登録して、Qiitaをもっと便利に使ってみませんか

この機能を利用するにはログインする必要があります。ログインするとさらに下記の機能が使えます。

  1. ユーザーやタグのフォロー機能であなたにマッチした記事をお届け
  2. ストック機能で便利な情報を後から効率的に読み返せる
ユーザー登録ログイン
ストックするカテゴリー