ユニークスター数

  • /*
     * @title ユニークスター数
     * @description 一人一星でスターをカウントします。ページをあらかた読み込み終わった後に実行して下さい。
     * @include http://*
     * @license MIT License
     */
    
    /*
    スターの多いページでは、実行結果が出るまで時間がかかります。まずはスターの少なめなページで動作確認をして下さい。
    */
    
    if (typeof(Hatena) == "object") (function () {
    
    var i, e, s = Hatena.Star, t = Ten.JSONP;
    // スターが多すぎるページ向けの強制リセット、乱暴。
    // if (t.Callbacks.length)
     t.Callbacks = [];
    
    if (s && (e = s.EntryLoader.entries)) for (i = 0; i < e.length; i++) {
    
    	e[i].bmlR = function(r) {
    
    		if (r = r.entries[0]) {
    
    			var i, e, t = 0, n = {}, c = r.colored_stars, s = r.stars;
    			e = s ? s : [];
    
    			if (c) for (i = 0; i < c.length; i++) e = e.concat(c[i].stars);
    
    			for (i = 0; i < e.length; i++) if (!n[e[i].name] && ++t) n[e[i].name] = 1;
    
    			// alert(this.uri + " : " + t);
    			this.star_container.appendChild(document.createTextNode(t))
    
    		}
    
    	};
    
    	new t(s.BaseURL + "entry.json?uri=" + encodeURIComponent(e[i].uri), e[i], "bmlR")
    
    }
    
    })()
  • Permalink
    このページへの個別リンクです。
    RAW
    書かれたコードへの直接のリンクです。
    Packed
    文字列が圧縮された書かれたコードへのリンクです。
    Userscript
    Greasemonkey 等で利用する場合の .user.js へのリンクです。
    Loader
    @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
    Metadata
    コード中にコメントで @xxx と書かれたメタデータの JSON です。

History

  1. 2010/08/27 15:48:31 - 2010-08-27
  2. 2010/08/27 15:45:35 - 2010-08-27
  3. 2010/08/26 21:23:28 - 2010-08-26
  4. 2010/08/26 18:59:44 - 2010-08-26
  5. 2010/08/26 18:20:07 - 2010-08-26