« スタイルシートtext-shadow | メイン | onclickイベントを動的に追加する »

TDエレメントをJavascriptの配列として使用する

いわいるDomです。


var TDs = document.all.getElementsByTagNam("td")

とするとHTMLのTDタグのコレクションが出来上がります。
DOMのツリー順に配列となり、

TDs[0]

など添字を利用してその要素にアクセスが可能となります。
勿論、添字は0からです。

xillionのLightsOut3_new.htmlでは、document.allを避けたかったので、
テーブルにIDを名付けて、そのIDの範囲でgetElementsByTagNameを行いました。
このようにすることで、添字が判りやすくなります。
(document.allの場合、自分の意図しないTDが選択されるかもしれません。)

具体的にはテーブルをこのように書いて


<table id="gameboard">
  <caption align=top id="header">Lights Out !</caption>
  <tbody>
   <tr><td class="a" >1</td>
    <td class="a">2</td>
    <td class="a">3</td>
    <td class="a">4</td>
    <td class="a">5</td>
  </tr>
  以下省略

下の用にjavascriptから要素にアクセスします。
(上では省略していますが要素は25個ありまあす)

   TDs = gameboard.getElementsByTagName("td");
  for (i=0; i<25; i++){ TDs[i].className = "a"; }

ロジックとしてはgameboar上の全てのTDのクラスを"a"としています。
ここだけ見ると無意味なロジックですが、
いわゆる初期処理で、ゲーム中に各TDのクラスを変更しますので、
再びゲームを始める際にはじめの状態にもどす処理となっています。

ひとつ前の投稿は「スタイルシートtext-shadow」です。
次の投稿は「onclickイベントを動的に追加する」です。

トラックバック

このエントリーのトラックバックURL:
http://www.xillion.net/mova/mt-tb.cgi/224

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

About

2008年01月03日 11:57に投稿されたエントリーのページです。

メインページアーカイブページも見てください。

Powered by
Movable Type 3.34