jQuery嵌套选择器的祖先

时间:2013-05-05 22:18:07

标签: jquery jquery-selectors

我有一个LI,里面有很多东西

<li class="card">
                <div class="thumb">
                    <img src="/images/adv-ipanema.png" alt="">
                </div>
                <div class="caption">
                    <p class="place">Ipanema Beach</p>
                    <p class="steps">12,000 steps</p>
                </div>
                <div class="buttons">
                    <div class="close"></div>
                    <div class="up"></div>
                    <div class="down"></div>
                </div>
            </li>

我想要做的是在点击div类“up”时定位LI本身。

我创建了一个simplified proof-of-concept fiddle并且能够使用parent()。parent()但是必须有更好的方法,不是吗?我试过parentUntil('li')无济于事,除非我做错了。

2 个答案:

答案 0 :(得分:3)

尝试 closest()

<强>描述
对于集合中的每个元素,通过测试元素本身并遍历DOM树中的祖先来获取与选择器匹配的第一个元素。

即。

$(this).closest("li") // or
$(this).closest(".card")

N.B。 parentsUntil()会将所有父母归还(但不包括)提供的选择

答案 1 :(得分:2)

您正在寻找closest方法:

var listItem = $(this).closest('li');