0

なぜ名前だけ色が変わるのに年齢は変わらないのですか?

<div id="user">
<?php echo $user_name; ?>
<span class="age"><?php echo $user_age; ?></span>
</div>

ユーザー名の色の変更は機能していますが、スパン内の年齢は機能していません。

$(document).ready(function(){
$('#user').css('color','red');
$('#user#age').css('color','gray');  
});
4

6 に答える 6

3

これを試して

$('#user .age').css('color','gray'); 

セレクターが「。」で始まるクラス「年齢」があります。#user の中にあるので、 #user と .age の間にスペースが必要です。

于 2012-04-18T21:07:12.207 に答える
2

クラスを使用する必要がある場所で id を使用しています

$('#user#age') // looks for something like <div id="user age"></div> which is invalid

する必要があります

$('#user .age') // looks for <div class="age"></div> inside <div id="user"></div>

スペースがない場合、同じ要素で複数のプロパティが検索されます。スペースを使用して、他の要素内の最後のプロパティを持つ要素を探します。コンマを使用して、いずれかのプロパティを持つ要素を探すこともできます

$('#user, .age') // targets both <div id="user"></div> and <div class="age"></div>
于 2012-04-18T21:08:08.463 に答える
2

#user#ageidとの両方userを持つ要素に一致しageます。要素が 2 を持つことができないため、これは明らかに不可能idです。.age内でを一致させたい場合は#user、それらの間にスペースを入れる必要があります。

また、ageはクラスであり、 ではありませんid。クラスは.and not を使用し#ます。

これらすべてを追加すると、セレクターは次のようになります。

#user .age

于 2012-04-18T21:10:50.673 に答える
1

クラスなので、ドットを使用して選択します

$(function(){
  $('#user .age').css('color','gray');  
});

これが実際のサンプルです: http://jsfiddle.net/35G5j/1/

#IDで選択するためのものです

.cssクラスで選択するためのものです

于 2012-04-18T21:08:34.727 に答える
1

定義ageではIDではなくclassであるため、次のことができます。

$(document).ready(function(){
    $('#user').css('color','red');
    $('.age').css('color','gray');  
});

それはうまくいくはずです。

于 2012-04-18T21:09:26.670 に答える
0

age は id ではなくクラスのナンメであるため、使用できません # Have to use .

于 2012-04-18T21:12:03.580 に答える