2017-04-06 10 views
1
for (i = 1; i < 24; i++){{ 

     if(dices[i].value == 0) { 
      $('td div:nth-child(i)').addClass("zero-desktop") 
      } else if (dices[i].value == 1) { 
      $('td div:nth-child(i)').addClass("one-desktop") 
      } else if (dices[i].value == 2){ 
      $('td div:nth-child(i)').addClass("two-desktop") 
      } else if (dices[i].value == 3) { 
      $('td div:nth-child(i)').addClass("three-desktop") 
      } else if (dices[i].value == 4) { 
      $('td div:nth-child(i)').addClass("four-desktop") 
      } else { 
       alert ("NOT WORKING") 
      } 
      }}; 

dices[i]は23個の乱数を表示し、23個のdivがある配列です。jQuery:Forループelse ifおよびnth-child

dice[i].valueは(0〜4)のいずれかに等しく、divにクラスが追加され、divにクラスを追加すると、[i]は終了番号に達するまで増加します。

何らかの理由でキャッチされていませんエラー:構文エラー、認識できない式::nth-​​childエラーが表示されます。

+0

dices配列も貼り付けできますか? – Optimae

+0

dicesは23の乱数を生成する配列です。たとえば、ダイス[2]は0〜4の範囲で、ページをリフレッシュするたびに変化します。 –

答えて

2

ここでの問題は、文字'i'を変数iの代わりにセレクタに挿入していることです。

for (i = 1; i < 24; i++) { 
    if (dices[i].value == 0) { 
    $('td div:nth-child(' + i + ')').addClass("zero-desktop") 
    } else if (dices[i].value == 1) { 
    $('td div:nth-child(' + i + ')').addClass("one-desktop") 
    } else if (dices[i].value == 2){ 
    $('td div:nth-child(' + i + ')').addClass("two-desktop") 
    } else if (dices[i].value == 3) { 
    $('td div:nth-child(' + i + ')').addClass("three-desktop") 
    } else if (dices[i].value == 4) { 
    $('td div:nth-child(' + i + ')').addClass("four-desktop") 
    } else { 
    alert ("NOT WORKING") 
    } 
} 
+0

ありがとうございます!!!!! –

+0

喜んで助けてください!あなたのプロジェクトの残りの部分と幸運: – gyre

+0

ねえ、私はあなたが私の答えを受け入れることに決めたことに気づいた。何か特別な理由がありますか?新しい問題が発生した場合でも、私はあなたを助けることができるかもしれません。私に教えてください:) – gyre

関連する問題