5

ページに一連のDIVがあります(それぞれが同じクラスです)。ロード時に、各DIVの色をランダム化したいと思います。

特定のDIVに色を選択し、次に次のDIVに色を選択するようにします。

私はこの投稿を見つけました:クラス要素に個別にランダムな色を適用しますか?

私はjqueryを理解していませんが、使用しているクラスの名前を反映するようにコードを変更することから始めました。

$(document).ready(function() {
$('.main').each(function () {
    var hue = 'rgb(' + (Math.floor((256-199)*Math.random()) + 200) + ',' + (Math.floor((256-199)*Math.random()) + 200) + ',' + (Math.floor((256-199)*Math.random()) + 200) + ')';
    $(.jump-response).css("background-color", hue);
});
});

さらなる助けをいただければ幸いです!

-

ここでのコード例:http://jsfiddle.net/ollyf/LmwYP/

また、事前に設定された/事前に決定された色のリストからランダムな背景色を追加する必要があります。

4

4 に答える 4

24

あなたのhtmlはわかりませんが、divが次のように定義されていると仮定します。

<div class="jump-response">one</div>
<div class="jump-response">two</div>

コードの主な問題は、要素を選択する方法です。

1.解決策

$(function() {
    $(".jump-response").each(function() {
        var hue = 'rgb(' + (Math.floor((256-199)*Math.random()) + 200) + ',' + (Math.floor((256-199)*Math.random()) + 200) + ',' + (Math.floor((256-199)*Math.random()) + 200) + ')';
         $(this).css("background-color", hue);
    });
});

jsFiddle デモンストレーション

2.解決策

次の関数を使用して、ランダムな色を取得できます

function get_random_color() {
    var letters = '0123456789ABCDEF'.split('');
    var color = '#';
    for (var i = 0; i < 6; i++ ) {
        color += letters[Math.round(Math.random() * 15)];
    }
    return color;
}

を使用して色を適用します

$(".jump-response").each(function() {
    $(this).css("background-color", get_random_color());
});

jsFiddle デモンストレーション

于 2012-05-10T18:45:12.733 に答える
0

これを試して

$(document).ready(function() {
  $('.jump-response').each(function () {
      var hue = 'rgb(' + (Math.floor((256-199)*Math.random()) + 200) + ',' + (Math.floor((256-199)*Math.random()) + 200) + ',' + (Math.floor((256-199)*Math.random()) + 200) + ')';
      $(this).css("background-color", hue);
  });
});
于 2012-05-10T18:49:41.590 に答える
0

引用符を追加するだけでよいと思います.jump-response

$(".jump-response").css("background-color", hue);

また、「main」のクラスを持つすべての要素をループしていますが、その要素には何もしていないので、ループ コードを削除できると思います。

于 2012-05-10T18:44:26.697 に答える