jQuery日本語リファレンス

jQuery does not mean Japanese Query...

Attributes/API/jQuery

attr(key,fn)

値の変わりにコールバック関数を設定し、全ての要素に属性を設定する。

上記の用途で値として関数の戻り値を入れるのではなく、関数ポインタを渡してやることで属性を設定しながら関数がコールバックされる形になる。
コールバック関数のスコープ内でのthisポインタは処理中の要素そのものになる。また、要素のインデックスを取りたい場合は第一引数で渡される配列の[0]を取得すること。
引数
key
String
属性の名前
fn
Function
設定したい値を返すコールバック関数。スコープ内でのthisポインタは処理中の要素。引数は処理中の要素のインデックス。
戻り値
jQuery
jQueryオブジェクト
サンプル
サンプル1
全てのdiv要素に、順番に”div-id0”,”div-id1”,…,”div-id10”のようにユニークな値を付けていく。
<div>Zero-th <span></span></div>
<div>First <span></span></div>
<div>Second <span></span></div>
$("div").attr("id", function (arr) {
      return "div-id" + arr[0];
    })
    .each(function () {
      $("span", this).html("(ID = '<b>" + this.id + "</b>')");
    });
[全コードを表示] [実行結果を単体で表示]