jQueryの履歴

jQueryのjは小文字です。

Google AJAX API Loader

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>

コード

ajax

$.ajax({
  dataType: "json",
  data: {
    "key": "value"
  },
  cache: true,
  url: "http://path/to/request/",
  success: function (data) {
    alert(data);
  }
});  

onloadみたいなやつ

$(document).ready(function(){
  ...
}

DOMオブジェクトとjQueryオブジェクト


DOMオブジェクトとjQueryオブジェクトが混在する。jQueryのあまり好きじゃないところ…。

$('div').each(function(){
  // thisはDOM
});

var jqueryDiv = $('div');    // jQueryオブジェクト
var domDiv = $('div').get(); // DOMを取得

色を使うアニメーション

標準ではできない。数値化されてないかららしい。

これを使う。
http://plugins.jquery.com/project/color

プラグイン開発

jQuery使う場合は基プラグイン化していった方がいい。
http://docs.jquery.com/Plugins/Authoring

プラグインのテンプレート

jQuery(function(){
  // ここにプラグイン共通のパラメータなど
  var commonParameters = {};

  $.fn.myPlugin = function(){
    // ここに要素固有の処理を書く
    
    // メソッドチェーンするため自分を返す
    return this;
  }
})

バグ?

IE8でtrのvisibleがおかしい

実証コード

<table id="target">
  <tr> 
  <td>hoge</td>
  <td>moge</td>
  <td style="display:none">sage</td></tr>
</table>  
<script type="text/javascript">
$(function(){
  var str = '';
  $('#target tr').children().filter(':visible').each(function(){
    str += $(this).text();
  });
  alert(str);
});
</script>

"hoge moge" が正しいだけど、IE8では "hoge moge sage" になる。
:visibleはwidthとheightが0以上であればvisibleだと判断してるだけど、
IE8ではtrがhiddenでもwidthに0以上の値を返すかららしい。

1.3.3では直るっぽい。
http://dev.jquery.com/ticket/4512

リンク

ドキュメント
http://docs.jquery.com/Main_Page

jQuery開発者メモ
http://www.mikage.to/jquery/

jQueryを読み解く
http://gihyo.jp/dev/feature/01/jquery