如何使用jQuery指定通配符(*)将颜色应用于所有子级(深层)?

时间:2014-03-07 14:46:25

标签: jquery css

我有一个<div id='sample'></div>,我想将color css属性应用于其所有子级(意味着所有深度级别)。

当我从css那样做

#sample * {
    color: '#AAA'
} 

它应用了正确的颜色,但是当页面准备就绪时我无法使用jQuery执行此操作。

我想这样做,因为我想根据点击的radio按钮切换颜色。

任何人都可以帮助我吗?

为什么要投票?

4 个答案:

答案 0 :(得分:1)

$('#sample *').css('color', '#AAA');

经过测试和工作。 http://jsfiddle.net/2e8wp/

但是一个完整的CSS方法可能是一个更好的主意。

答案 1 :(得分:1)

您好,您可以使用children()JQuery方法。

$('#sample').children().css('color', '#AAA');

这将为其子项设置css,但如果您在父项中设置了颜色的内联样式/类 - 它将不会覆盖它们,请参阅.find('*')解决方案之一以获取该功能... < / p>

http://jsfiddle.net/H7zL5/ 这是我的意思的一个例子..

答案 2 :(得分:1)

使用.find('*');

$('#sample').find('*').css('color','#AAA');

答案 3 :(得分:0)

我会做这样的事情:

添加css规则:

#sample.active * { color: #AAA }

然后在适当的时候:

$('#sample').addClass('active');