Hatena Bookmark twimg tool

  • /*
     * @title Hatena Bookmark twimg tool
     * @description はてなブックマークでtwimgのURLだったらなんかいろいろする
     * @include http://b.hatena.ne.jp/*
     * @license MIT License.
     */
    
    (function() {
      function hbtwimg(doc) {
        var entry = doc.getElementsByClassName('entrylist-unit');
        for (i in entry) {
          /* twimgのURLを取る */
          var image = entry[i].getElementsByClassName('entry-link')[0];
          if ( ! /twimg/.test(image) ) { continue; }
    
          /* ブコメブックスをサムネ対応に変える */
          var box = entry[i].getElementsByClassName('curvebox-body')[0];
          box.childNodes[0] = 'comment with-thumbnail';
    
          /* サムネ追加 */
          var tmb = document.createElement('span');
          tmb.className = 'thumbnail';
          tmb.innerHTML = '<img src="'+ image +':thumb" style="width:80px;">';
          box.childNodes[0] = 'comment with-thumbnail';
          box.insertBefore(tmb, box.childNodes[0]);
    
          /* TODO:コピペボックスの設置 */
          var box2 = box.getElementsByClassName('comment')[0];
          var clipbox = document.createElement('li');
          clipbox.className = 'clipbox';
          clipbox.innerHTML = '<input value="'+image+'" style="width:300px;">';
          box2.appendChild(clipbox);
        }
      }
    
      if (typeof unsafeWindow == 'undefined') {
        /* Bookmarklet, etc... */
        var TEN = Ten;
      } else {
        /* Greasemonkey */
        var TEN = unsafeWindow.Ten;
      }
    
      Ten.DOM.addEventListener('DOMContentLoaded', function () {
        hbtwimg(document.body);
      });
    
    })();
    
  • Permalink
    このページへの個別リンクです。
    RAW
    書かれたコードへの直接のリンクです。
    Packed
    文字列が圧縮された書かれたコードへのリンクです。
    Userscript
    Greasemonkey 等で利用する場合の .user.js へのリンクです。
    Loader
    @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
    Metadata
    コード中にコメントで @xxx と書かれたメタデータの JSON です。

History

  1. 2016/06/13 17:54:17 - 2016-06-13
  2. 2016/06/13 17:51:37 - 2016-06-13
  3. 2016/06/13 17:51:29 - 2016-06-13
  4. 2016/06/06 16:03:33 - 2016-06-06
  5. 2016/06/06 15:47:09 - 2016-06-06
  6. 2016/06/03 09:43:53 - 2016-06-03
  7. 2016/06/03 08:59:40 - 2016-06-03
  8. 2016/06/02 09:44:33 - 2016-06-02
  9. 2016/06/02 08:58:50 - 2016-06-02