0

文字列内の文字を選択した色のセットにランダムに割り当てる Javascript 関数を作成しようとしています。文字列内の文字を選択して色を割り当てる方法がよくわかりません

これが私のコードです:

    <script>
        function Rainbow(x,chosencolor) {
            var mystring = String(x);                                              @* convert to string*@
            var Stringlength = mystring.lenth;                                     @* length fo string *@
            var rainbowstring = new Array(Stringlength);                           @* create array of appropriate size*@
            var counter = 0;

            while (counter < Stringlength) {
                var randomnumber = Math.floor(Math.random() * 10);                     @* random number generator --> 11 means 0-10 *@         

                  switch (randomnumber) {
                    case 0:

                        break;
                    case 1:

                        break;
                    case 2:

                        break;
                    case 3:

                        break;
                    case 4:

                        break;
                    case 5:

                        break;
                    case 6:

                        break;
                    case 7:

                        break;
                    case 8:

                        break;
                    case 9:

                        break;
                }
                rainbowstring[counter] = chosencolor;                              @* assign color *@
                counter++;                                                         @* increment *@
            }
     }

        @* need something that generates colors *@
        @* assigns colors to text *@

    </script>
4

1 に答える 1

1

これを試して:

<script>
function Rainbow(x,chosencolor) {
  var mystring = String(x);                                              @* convert to string*@
 var Stringlength = mystring.lenth;                                     @* length fo string *@
 var rainbowstring = new Array(Stringlength);                           @* create array of appropriate size*@
var counter = 0;
var clr, ltr;
  while (counter < Stringlength) {
    var randomnumber = Math.floor(Math.random() * 10);                     @* random number generator --> 11 means 0-10 *@   
    ltr = mystring.charAt(counter); //--- get the current letter      
    switch (randomnumber) {
        case 0: clr='#f00'; break;
        case 1: clr='#0f0'; break;
        case 2: clr='#00f'; break;
        case 3: clr='#000'; break;
        case 4: clr='#fff'; break;
        case 5: break;
        case 6: break;
        case 7: break;
        case 8: break;
        case 9: break;
     }
     rainbowstring[counter] = "<span style='color:"+clr+"'>"+ltr+"</span>";                              @* assign color *@
     counter++;                                                         @* increment *@
   }
}
</script>
于 2013-08-27T23:55:51.373 に答える