使用jQuery基于child的属性将样式应用于父级?

时间:2012-05-21 20:56:45

标签: jquery css

如果元素具有特定属性,如何将样式应用于元素的父元素?这是我正在使用的例子......

<div>
    <div class="inner"></div>
    <div class="inner"></div>
    <div class="inner"></div>
</div>
<div>
    <div class="inner active"></div>
    <div class="inner"></div>
    <div class="inner"></div>
</div>
<div>
    <div class="inner"></div>
    <div class="inner"></div>
    <div class="inner"></div>
</div>

...当我的带有'inner'类的子元素也包含'active'类时,我想在out div中应用背景颜色。这是我一起入侵的jQuery解决方案,似乎没有工作......

if ($("div.inner").hasClass("active")) {
    $(this).parent().css("background", "yellow");
};

有没有人有一个修复或更好的方法?感谢。

另外,可选地,如何根据“内部”div中的特定文本应用样式而不是应用于它的特定类?再次感谢。

3 个答案:

答案 0 :(得分:14)

$("div.inner.active").parent().css("background", "yellow");

jsFiddle:http://jsfiddle.net/g4gBx/1/

答案 1 :(得分:0)

同样值得注意的是,截至目前,无法根据纯元素中的子元素属性,属性或文本影响父元素的样式。

答案 2 :(得分:0)

$(&#34; .active&#34;)。父母(&#39; div&#39;)。css(&#34; text-align&#34;,&#34; center&#34;) ;