Archive for the Category jQuery

 
 

【jQuery】tableのtrを取得したいのに。

以下のようなtableを書いたときに子要素であるtrを取得したいわけで。

</p>

<table id="table">
    <tr>
      <td>hoge1</td>
      <td>hoge2</td>
    </tr>
    <tr>
      <td>hoge3</td>
      <td>hoge4</td>
    </tr>
    <tr>
      <td>hoge5</td>
      <td>hoge6</td>
    </tr>
  </table>

<form action="javascript:void(0);"><input id="input" type="button" name="" value="run" /></form>

<p>
単純にjQueryを使うと
$("#input").click(function(){
  console.log($("table").children());  //jQuery(tbody)
});
としちゃうんですが。 どうやら書いてもいないjQueryオブジェクトのtbodyを返すようだ。( firfox webkit ie6,7,8で確認した )

なのでこうする

$("#input").click(function(){
  console.log($("table")[0].rows);     //[tr, tr, tr]
});
でも帰ってくるものは素のDOMなのでメソッドチェーン出来ない なのでラップする
$("#input").click(function(){
  console.log($($("table")[0].rows));  //jQuery(tr, tr, tr)
});
出来たー。tr達が帰ってきたー。お帰り!

【javascript】ツイートを縦読みで表示する。

logo ツイートを縦表記にして表示する勝手サービス(?)たてったーを作りました。

縦表記ライブラリ「nehan」を使ってみました。 https://code.google.com/p/nehan/ ソースはこんな感じ。prev nextが消えたりするようにしました。 SimpleReaderの中に目に見える形でpageNoがあってよかった。 以下作ったjs
Den ganzen Beitrag lesen…

【javascript】google url shortenerを使って短縮URLを生成


追記 http://ggl-shortener.appspot.com/instructions/

ブックマークレットあった・・・調べ方が足りなかったなぁ。

google url shortenerで見てるページの短縮URLを作るブックマークレットをつくった。 使い方は

javascript:(function(s){s.src="http://gecko.hp2.jp/t/short.js";document.body.appendChild(s)})(document.createElement('script'));
を見たいページを開いてアドレスバーに入れて実行するだけー。bit.lyより短いんだぜ?

スクリプトに書いてある英語はエセ英語だから触れないで!


Den ganzen Beitrag lesen…

【jQuery】Googleのテキスト読み上げ非公式APIをたたく。

テックランチに記事があったので。 ttp://jp.techcrunch.com/archives/20091214the-unofficial-google-text-to-speech-api/

とりあえずサンプルを作ってみた。 http://gecko.hp2.jp/talkTwitter/

jQueryのプラグインのjQueryFlexPlayerを使用させていただきました。 他のmp3再生プラグインのjPlayerはうまく動かんかったです。

これを使ってtwitterのパブリックタイムラインを読み上げるものを作りたいなーとおもう。

【jQuery】word-break:break-all;をie以外でも実装するjQueryプラグイン

半角文字列が続くとボックスをはみ出して大変なことになることが多々あったり。 調べた結果 http://webtech-walker.com/archive/2008/11/02151611.html http://d.hatena.ne.jp/bushimichi/20091008/1254973137

1番目のプラグインは、入れ子になっている場合処理をしていない 2番目のプラグインは、入れ子を処理するがbrや空要素の場合でも再帰しているかつ、グローバル変数作ってるのが気になる。 と、気になることが多々あったので2番目の方のプラグインをマッシュアップ!

/*
 *  wordbreakplugin : wordbreak_0.1_gecko.js
 */
(function($){
  $.extend({
    wb : new function(){
      this.version = 0.1+'_gecko';
      this.sep = String.fromCharCode(8203);
      var h = [],retext = [];
      this.remake = function(elm){
        var self = this;
        h = elm.contents();
        elm.html('');
        $(h).each(function(){
          if(this.nodeType == 3){
            retext = $.trim(this.textContent.split('').join(self.sep));
          }else if(this.textContent == ''){
            retext = this;
          }else{
            retext = self.remake($(this));
          }
          elm.append(retext);
        });
        return elm;
      }
    }
  });
  $.fn.wb = function(){
    if(undefined !== window.ActiveXObject){
      $(this).css('word-break', 'break-all');
    }else{
      $(this).each(function(){ $.wb.remake($(this));});
    }
    return this;
  }
}(jQuery));

ソース上の改行や半角空白のインデントがあるとそのままappendしちゃうので$.trimを使って文字列の前後の空白を除去。 firefox2はwbrじゃないといかんらしいので、 this.sep = (navigator.userAgent.indexOf(‘Firefox/2′) != -1)? ‘‘ : String.fromCharCode(8203) ; こうするんだろうなぁ。やってないけど。