blog.hekt.org

Javascriptわけわかんね

サンプルページ(Javascript/CSS)みたいなことをもっとスマートにやりたいのですが、どうも上手く行きません。

window.onload = function enabledisable() {
 var edswitch = document.getElementsByTagName("a");
 var edblock = document.getElementsByTagName("div");

 for (var i=0;i<edswitch.length;i++) {
  edswitch[i].onclick = function() {
   if (edblock[i].className.match("enable")) {
    edblock[i].className = edblock[0].className.replace(/enable/, "disable");
   } else {
    edblock[i].className = edblock[0].className.replace(/disable/, "enable");
   }
  }
 }
}

じゃダメだしなあ。誰かアドバイスプリーズ!

というか、ダメな理由がよくわかってません。まずedswitch[0],edswitch[1],edswitch[2]をクリックしたらイベント起こすよーという定義をしちゃってるから、そのイベントが起動するときにはiの値が3になってる、とかでしょうか。