hatenablog rokuyo-nize
by
taizooo
2014-01-13 [2014/01/13 00:57:54]
はてなブログの記事の日付に六曜を表示する
-
/*
* @title hatenablog rokuyo-nize
* @description はてなブログの記事の日付に六曜を表示する
* @include http://*
*/
// hatenablog-unofficial-modules/rokuyo.js at master · hitode909/hatenablog-unofficial-modules
// https://github.com/hitode909/hatenablog-unofficial-modules/blob/master/rokuyo.js
// はてなブログの記事の日付に六曜を表示する - hitode909の日記 http://hitode909.hatenablog.com/entry/2014/01/12/205605
// Generated by CoffeeScript 1.6.3
/*
* はてなブログの記事の日付に六曜を表示する
** 使い方
以下をコピーして デザイン編集 → カスタマイズ → フッタHTML に貼り付け
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="https://rawgithub.com/hitode909/hatenablog-unofficial-modules/master/rokuyo.js"></script>
旧暦を取得するWeb APIを利用しています.
- http://api.sekido.info/qreki?output=usage
日付が途中で改行して崩れる場合はいかのようなCSSを指定すれば直るかもしれない
.date {
display: inline-block;
width: auto;
}
*/
(function() {
$(function() {
var handle_article, main;
handle_article = function($article) {
var day, load, month, year;
if ($article.prop('rokuyou-loaded')) {
return;
}
$article.prop('rokuyou-loaded', true);
year = +$article.find('.date-year').text();
month = +$article.find('.date-month').text();
day = +$article.find('.date-day').text();
load = $.ajax({
url: 'http://api.sekido.info/qreki',
dataType: 'jsonp',
data: {
year: year,
month: month,
day: day,
output: 'jsonp'
}
});
return load.done(function(res) {
var $rokuyou, rokuyou;
rokuyou = res.rokuyou_text;
$rokuyou = $('<span>');
$rokuyou.addClass('rokuyou');
$rokuyou.addClass("rokuyou-" + rokuyou);
$rokuyou.text(rokuyou);
return $article.find('.date a').append($rokuyou);
});
};
main = function() {
return ($('article')).each(function() {
return handle_article($(this));
});
};
main();
return setInterval(function() {
return main();
}, 1000);
});
}).call(this);
// css set
var css = commentToText(function () {/*
.date {
display: inline-block;
width: auto;
}
.rokuyou {
font-family: serif;
font-weight: bold;
}
.rokuyou-大安, .rokuyou-友引 {
color: #FAA;
}
.rokuyou-仏滅, .rokuyou-赤口 {
color: #000
}
*/});
var style = document.createElement('style');
style.type = 'text/css';
style.appendChild(document.createTextNode(css));
document.querySelector('head').appendChild(style);
// commentToText
// https://github.com/tombfix/core/blob/2b0f251ff7d5968a138e2a4e8d24d5947005826a/xpi/chrome/content/library/01_utility.js#L2489
function commentToText(commentFunc) {
return (commentFunc).toString().replace(/^.*?\r?\n/, '').replace(/\r?\n.*?$/, '');
}
-
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。