4

HTML :

<div id="tab">This is a paragraph.</div>
<div id="tab">This is a paragraph.</div>
<div id="tab">This is a paragraph.</div>
<div id="tab">This is a paragraph.</div>

CSS :

#tab{
  height:30px;
  width:130px;
  background-color:red;
}

Jクエリ:

$(document).ready(function() {
    function randomNumber() {
        return Math.floor(Math.random() * 255)
    }
    $('#tab').mouseover(function() {
        $('#tab').css('background-color', 'rgb(' + randomNumber() + ',' + randomNumber() + ',' + randomNumber() + ')');
    });
    $('#tab').mouseout(function() {
        $('#tab').css('background-color', 'white');
    });
});

このフィドルがあり、最初のタブだけでなく、すべての #tabs に色の変更を適用したいのですが、どうすればよいですか?

フィドルの例はここにあります。

4

5 に答える 5

2

ID の割り当ては 1 回だけです。このhttp://jsfiddle.net/nHCXV/3/のようなクラスに変更します

于 2012-09-20T09:12:40.543 に答える
1

これが正しい方法のフィドル魔女です:

http://jsfiddle.net/ToBadForU/9p7ud/

これはあなたが望むものですよね?

于 2012-09-20T09:17:56.390 に答える
1

代わりにクラスを使用してください。次に、を使用してそれらすべてにアクセスできます

 $('.classname')
于 2012-09-20T09:12:54.507 に答える
1

id は一意であるため、id 属性をクラスとして変更する必要があります。これがjsfiddleにあることを試してみましょう

于 2012-09-20T09:15:00.253 に答える
0

同じ を指定する代わりに、orなしでidを宣言し、以下のコードを指定できます。セレクターの詳細については、このリンクにアクセスしてください。dividclass

$(document).ready(function() {
function randomNumber() {
    return Math.floor(Math.random() * 255)
}
$('div').mouseover(function() {
    $('div').css('background-color', 'rgb(' + randomNumber() + ',' + randomNumber() + ',' + randomNumber() + ')');
});
$('div').mouseout(function() {
    $('div').css('background-color', 'white');
  });
});​

または単にのclass代わりに を使用しますidID は一意ですが、クラスではないためです。

于 2012-09-20T09:13:12.377 に答える