増田のはてブ数
by
pacochi
2017-01-01 [2017/01/01 13:31:26]
一覧ページのパーマリンク部分にはてブ数 (* users) を付けていきます。
@@ -8,18 +8,18 @@
(function () {
- window.$o_o$ = function(counts) {
+ if (typeof(window.$o_o$) != 'function') window.$o_o$ = counts => {
- for (var url in counts) {
+ for (let url in counts) {
- var users = counts[url];
+ const users = counts[url];
if (!users) continue;
- a = document.createElement("a");
+ const a = document.createElement("a");
a.setAttribute("href", "http://b.hatena.ne.jp/entry/" + url.substr(7));
a.style.cssText = 'font-weight: bold; ' + ((users < 10) ? 'color: #FF6766; background-color: #FFEEEE;' : 'color: #FF0606; background-color: #FFCBCB;');
a.appendChild(document.createTextNode(users + ' ' + ((users == 1) ? 'user' : 'users')));
- var p = document.querySelector('p.sectionfooter>a[href="' + url + '"]');
+ const p = document.querySelector('p.sectionfooter>a[href="' + url.replace(/^.+\//, '/') + '"]');
p.parentNode.insertBefore(a, p);
p.parentNode.insertBefore(document.createTextNode(' | '), p);
/*
* @title 増田のはてブ数
* @description 一覧ページのパーマリンク部分にはてブ数 (* users) を付けていきます。
* @include http://anond.hatelabo.jp/*
* @license MIT License
* @javascript_url
*/
(function () {
if (typeof(window.$o_o$) != 'function') window.$o_o$ = counts => {
for (let url in counts) {
const users = counts[url];
if (!users) continue;
const a = document.createElement("a");
a.setAttribute("href", "http://b.hatena.ne.jp/entry/" + url.substr(7));
a.style.cssText = 'font-weight: bold; ' + ((users < 10) ? 'color: #FF6766; background-color: #FFEEEE;' : 'color: #FF0606; background-color: #FFCBCB;');
a.appendChild(document.createTextNode(users + ' ' + ((users == 1) ? 'user' : 'users')));
const p = document.querySelector('p.sectionfooter>a[href="' + url.replace(/^.+\//, '/') + '"]');
p.parentNode.insertBefore(a, p);
p.parentNode.insertBefore(document.createTextNode(' | '), p);
};
};
// 参考 http://let.hatelabo.jp/a-kuma3/let/hJmf1-2Uhdgq
Ten.JSONP('http://api.b.st-hatena.com/entry.counts?callback=$o_o$&' +
Array.prototype.slice.call(document.querySelectorAll('p.sectionfooter>a:first-child'))
.map(function(a) { return 'url=' + a.href; }).join('&'), $o_o$);
})();
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。