Arrayリストに関して

[新着] Webテンプレートを仮オープンしました



0   名前: ひろし : 2007/03/01(木) 03:32  ID:MR4gn3x7 sub-vG
はじめまして。

JavaScriptのArrayに関して質問させて下さい。
カーソルが乗ると色の変わるHTMLを下記のように作成しました。

-------------------------------------------------------------


<HTML>
<HEAD>
<SCRIPT language="JavaScript">
function changeColor(id,size){

td = new Array(td1,td2,td3);//TDタグに付けたIDの配列
link = new Array(link1,link2,link3);//リンクタグに付けたIDの配列

for(i=0;i<td.length;i++){
if(id==link[i]){
td[i].style.backgroundColor="blue";
link[i].style.color="white";
}else{
td[i].style.backgroundColor="white";
link[i].style.color="red";
}
}
}
</SCRIPT>
</HEAD>
<BODY>
<TABLE border="1" rules="cols" width="110">
<TBODY>
<TR>
<TD id="td1" style="background-color:blue;"><FONT color="blue">■</FONT>
<A href="aaa.html" id="link1" style="color:white;" onmouseover="changeColor(this)">あああ</A></TD>
</TR>
<TD id="td2" style="background-color:white;"><FONT color="blue">■</FONT>
<A href="aaa.html" id="link2" style="color:red;" onmouseover="changeColor(this)">いいい</A></TD>
</TR>
<TD id="td3" style="background-color:white;"><FONT color="blue">■</FONT>
<A href="aaa.html" id="link3" style="color:red;" onmouseover="changeColor(this)">ううう</A></TD>
</TR>
</TBODY>
</TABLE>
</BODY>
</HTML>


-------------------------------------------------------------


ここで、質問なのですが、Javaでプログラムを乗せようと思うのですが
td = new Array(td1,td2,td3);//TDタグに付けたIDの配列
link = new Array(link1,link2,link3);//リンクタグに付けたIDの配列
の部分を動的に増やすにはどのようにすればよいのでしょうか?

td = new Array(size);

for(i=0;i<size;i++){
td[i] = "td"+(i+1);
}

とすると「td」がオブジェクトとしてではなく、文字列と認識されてしまいtd[i].style.backgroundColorが取得できません。

また、
aaa = new Array(size);

for(i=0;i<size;i++){
aaa[i] = td+(i+1);
}
とするとtdをセットできません。

どなたかご教授ください。

1   名前: 元帥 : 2007/03/01(木) 03:32  [URL]  ID:4CcCh4kv sub-bK
> ここで、質問なのですが、Javaでプログラムを乗せようと思うのですが
つまり、Javaアプレットか、JSPを併用したいって事?

JavaとJavaScriptは、インドとインドネシアくらいの違いがありますよ。


因みに>>0はNetscape7.1では動作しませんでした。
配列を宣言する際、各id名をダブルクォートorシングルクォートで囲む。
色を変更する際、getElementByIdを使う。
if文判定でid.idとする、or 関数を呼び出す際の引数をthis.idとする。
以上の三点の変更により一応は動作するようになります。

一覧へ戻る