TypePad:はてなスター★

噂のはてなスターなるものを付けてみました。

・・・が、まあいろいろとありまして、一記事毎に付けるのを諦めました(爆)
始めの読み込みなら平気なのですが、このブログのページ遷移がAjaxなもんで
読み込み終了をキーワードに起動しているこのシステムがページ遷移すると動かないのですが・・・。
で、まあ良いかと全ページで1つです。

結構がんばったんで勘弁してください(笑)

はてなユーザー専用ですが、共感等して頂けたら、サイドバーの一番下にあるAddのボタンを押して頂くとポイントの代わりに★が付くというものです。
画像をきつねに変えてありますので、★の代わりにきつねが増えます(笑)
きつねが増殖して私が勝手にウハウハです(爆)

トークンは切ってありますんで、コメントは出来ません。
気持ちだけ頂ければ嬉しいです。


****************************************************************

TypePadでの設置方法を記載しておきます。


設置は↓こちらを参照させて頂きました。
[ココログ] はてなスターを記事別ページにも(ついでにフッターにも)
そのままこの記事を参照して頂き、4番で貼り付けるスクリプトは↓に置換えてください。

<script type="text/javascript">
Hatena.Star.EntryLoader.loadEntries = function() {
    var entries = [];
    var divs = Ten.DOM.getElementsByTagAndClassName('div','entry',document.body);
    for (var i = 0; i < divs.length; i++) {
        entries.push(new Hatena.Star.Entry.typepadHeader(divs[i]));//記事タイトル横に表示する時有効
        entries.push(new Hatena.Star.Entry.typepadFooter(divs[i]));//記事フッターに表示する時有効
    }
    return entries;
}
Hatena.Star.Entry.typepadHeader = new Ten.Class({
    initialize: function(div) {
        this.div = div;
        var h3 = div.getElementsByTagName('h3')[0];
        this.title = Ten.DOM.scrapeText(h3);
        var posted = Ten.DOM.getElementsByTagAndClassName('p','entry-footer',div)[0];
        this.uri = Ten.DOM.getElementsByTagAndClassName('a','permalink',posted)[0].href;
        h3.innerHTML = '<a href="' + this.uri + '">' + this.title + '</a>';
        this.comment_container = Hatena.Star.EntryLoader.createCommentContainer();
        h3.appendChild(this.comment_container);
        this.star_container = Hatena.Star.EntryLoader.createStarContainer();
        h3.appendChild(this.star_container);
    }
});
Hatena.Star.Entry.typepadFooter = new Ten.Class({
    initialize: function(div) {
        this.div = div;
        var h3 = div.getElementsByTagName('h3')[0];
        this.title = Ten.DOM.scrapeText(h3);
        var posted = Ten.DOM.getElementsByTagAndClassName('p','entry-footer',div)[0];
        this.uri = Ten.DOM.getElementsByTagAndClassName('a','permalink',posted)[0].href;
        this.comment_container = Hatena.Star.EntryLoader.createCommentContainer();
        posted.appendChild(this.comment_container);
        this.star_container = Hatena.Star.EntryLoader.createStarContainer();
        posted.appendChild(this.star_container);
    }
});
</script>

とりあえず、参照記事と同じくタイトル部分と記事のフッター両方に表示されるようになっています。どちらかだけにしたい方は、「記事タイトル横に表示する時有効」「記事フッターに表示する時有効」と書かれている一文の先頭に//を付けてコメントアウトしてください。

例:タイトル部分だけにしたい場合

entries.push(new Hatena.Star.Entry.typepadHeader(divs[i]));//記事タイトル横に表示する時有効
//entries.push(new Hatena.Star.Entry.typepadFooter(divs[i]));//記事フッターに表示する時有効

コメント(0)