定位特定类jquery的所有父级(" .class")

时间:2013-06-20 18:30:16

标签: jquery jquery-selectors parent

我无法定位具有特定课程集的所有家长。

如果我点击乔治迈克尔,我想改变包含“michael”和“george sr”的<p>标签的颜色。

下面是虚拟html和失败的jQuery。

<ul>
<li><div class="leaf"><p>george sr</p></div>
<ul>
    <li><div class="leaf"><p>michael</p></div>
        <ul>
            <li><div class="leaf"><p>george michael</p></div></li>
        </ul>
    </li>
    <li><div class="leaf"><p>gob</p></div>
        <ul>
            <li><div class="leaf"><p>steve holt</p></div></li>
        </ul>
    </li>
    <li><div class="leaf"><p>lindsay</p></div>
        <ul>
            <li><div class="leaf"><p>maeby</p></div></li>
        </ul>
    </li>
</ul>

我试着这样做:

$(document).on("click", '.leaf', function() {
   $(this).parents(".leaf").children('p').css('color','red');
});

编辑请求:还有,有人可以解释为什么上面的jquery不起作用吗?

请帮助:)

供您使用:http://jsfiddle.net/KuZrq/2/

1 个答案:

答案 0 :(得分:2)

像这样:

$(document).on("click", '.leaf', function () {
    $(this).closest('li').parents('li').find('> .leaf > p').css('color', 'red');
});

FIDDLE