我想改变" b"使用儿童的颜色为红色。为什么上面的例子不起作用?我怎样才能使它发挥作用?
<div id="wrap">
<div class="parent1">
<div class="parent2">
<b>Text</b>
</div>
</div>
</div>
$(function(){
$('#wrap').children('parent1').children('parent2').$('b').css('color':'red');
})
这是我的jsFiddle示例:http://jsfiddle.net/L5aSt/
答案 0 :(得分:1)
你的jQuery有很多问题(至少有四个不同的错误)。如果你想要像以前一样严格的事情,我会建议:
$('#wrap > .parent1 > .parent2').css('color', 'red');
演示:http://jsfiddle.net/jfriend00/hcTkh/
如果您只想.parent2
下的#wrap
个班级项目,那么我建议:
$('#wrap .parent2').css('color', 'red');
答案 1 :(得分:1)
$(function(){
$('#wrap')
.find('b').css('color','red');
});
小提琴是here。 <{1}}内的所有b
都是红色的。
#wrap
当您在一个电话中应用多个样式规则时,请使用以下一个
$('#wrap .parent2').css('color', 'red'); // Only b's inside parent2 of wrap.
$('#wrap .parent1').css('color', 'red'); // Only b's inside parent1 of wrap (if have any).
或
$('#wrap').find('b').css({'color':'red','font-size':'12px'}); // here an object has been passed as argument.
答案 2 :(得分:1)
我倾向于同意其他答案。你所做的不是实现目标的“正确”方式:)。
那就是说,按照你使用代码的方法看起来像:
$('#wrap').children('.parent1').children('.parent2').children('b').css('color','red');
我将parent1
更改为.parent1
,因为您是按班级选择的。
parent2
上的原因相同。
我在$
之前将children
替换为b
,最后用逗号替换了颜色和红色之间的冒号(:)。