回答:
にマウスを合わせる2 years ago
と、タイムスタンプが表示されます。
「2年前」にカーソルを合わせると、実際の日付は表示されませんが<time>
、datetime
属性の下にiso値を持つ要素でテキストがラップされています。
他のすべてが失敗した場合は、私と同じように、テキストを調べてみてください。
サンプル要素:
<time datetime="2015-01-22T20:48:13Z" is="relative-time" title="Jan 22, 2015, 2:48 PM CST">7 days ago</time>
あなたはこのjsブックマークを使うことができます:
javascript:(function() {
var relativeTimeElements = window.document.querySelectorAll("relative time");
relativeTimeElements.forEach(function(timeElement){
timeElement.innerHTML = timeElement.innerHTML +" -- "+ timeElement.title;
})
}()
)
https://gist.github.com/PhilippGrulich/7051832b344d4cbd30fbfd68524baa38
それはちょうど正しい時間を追加します:このように:21時間前にコミットされました-2017年2月15日、15:49 MEZ
javascript:(function() { var el = document.createElement('div'); document.body.prepend(el); el.innerHTML = document.getElementsByTagName('relative-time')[0].getAttribute('title');}() )
Chromeで@odonyのTamperMonkey / Greasemonkeyスクリプトを試しましたが、動作しませんでした。detachCallback()
認識されませんでした。したがって、コールバックを切り離す代わりに、単に<relative-time>
ノードを置き換えました。
// ==UserScript==
// @name Github: always show absolute times
// @match https://github.com/*
// ==/UserScript==
(function() {
document.querySelectorAll("relative-time").forEach(function(el) {
var parent = el.parentNode;
var timestamp = el.title;
var span = document.createElement("span");
span.innerHTML = timestamp;
parent.removeChild(el);
parent.appendChild(span);
});
})();
申し訳ありませんが、これを他のブラウザでテストしていませんが、これは基本的なJavaScriptなので、動作するはずです。:)
ホバーリングせずに恒久的に日付/時刻を表示する方法(スクリーンショットなど)を探している場合、上記のJavaScriptベースのソリューションは最新のGithub HTMLと一致しません(コメントを参照)。また、タイムスタンプがタイマーに基づいて自動更新されること(「X分前」は1分ごとに変更する必要があります)が考慮されなかったため、定期的に再表示されます。
次のスクリプトは、2020-01-27現在のGithubで動作するようです。
(function() {
var els = window.document.querySelectorAll("time-ago,relative-time");
els.forEach(function(el) {
el.innerHTML = "on " + el.getFormattedTitle(); // original timestamp
el.disconnectedCallback(); // stop auto-updates
});
})();
他のJSベースのソリューションのようにコードの前に付けることで、これをブックマークレットにすることができますjavascript:
。
これを永続的な修正にしたい場合は、次のようにTamperMonkey / Greasemonkeyスクリプトとして保存できます。
// ==UserScript==
// @name Github: always show absolute times
// @match https://github.com/*
// ==/UserScript==
(function() {
setTimeout(function() {
var els = window.document.querySelectorAll("time-ago,relative-time");
els.forEach(function(el) {
el.innerHTML += ' <span class="text-small">(' + el.title + ')</span>'; // set original timestamp
el.disconnectedCallback(); // stop auto-updates
});
}, 100); // YMMV, experiment with the timeout
})();
それはそれほどきれいではありませんが、仕事をするようです。
gitlab 10では、これを使用してツールチップタイトルを標準テキストとして要素に追加しました。
javascript:(function() {
var relativeTimeElements = window.document.querySelectorAll("time");
relativeTimeElements.forEach(function(timeElement){
timeElement.innerHTML = timeElement.innerHTML +" -- "+ timeElement.getAttribute('data-original-title');
})
}());