jQuery选择当前项的父li

时间:2013-05-30 09:58:52

标签: jquery html css

我正在努力尝试使用jQuery选择菜单中的li

尝试了许多选择器,例如:

$(this).parents('li').find('a').addClass('current');

但上面没有选择最远的父母..

<nav>
    <ul>
        <li><a href=""></a></li>
        <li><a href=""></a></li>
        <li><a href=""></a></li>
        <li><a href=""></a>
            <div class="sub">

                <ul>
                    <li><a href=""></a></li>
                    <li><a href=""></a></li>
                    <li><a href=""></a></li>
                </ul>
                <ul>
                    <li><a href=""></a></li>
                    <li class="current"><a href=""></a></li>
                    <li><a href=""></a></li>
                </ul>
                <ul>
                    <li><a href=""></a></li>
                    <li><a href=""></a></li>
                    <li><a href=""></a></li>
                </ul>

            </div>
        </li>
        <li><a href=""></a></li>
        <li><a href=""></a></li>
        <li><a href=""></a></li>
        <li><a href=""></a></li>
    </ul>
</nav>

我想选择具有班级li a

current祖父母

4 个答案:

答案 0 :(得分:2)

您可以使用closest(),但是当它从当前元素开始时,closest('li')将不起作用,因此您必须找到最接近的UL,然后是最接近的LI:

$(this).closest('ul').closest('li')

答案 1 :(得分:0)

您可以使用以下代码,点击具有类当前的元素时需要触发。 代码就像。

$(".current").bind("click",function(event){
    var desiredElement = $(this).parents('li:first');
})

答案 2 :(得分:0)

$(".current").parents('ul').parents('li').find('a')

答案 3 :(得分:0)

试试这个

$(this).parent().closest("li").addClass('current');