用jQuery获得最接近的元素

时间:2012-03-06 20:23:47

标签: jquery-selectors jquery

我有这个标记:

<div class="news-listItem">
     <p class="date">Date: 06.03.2012</p>
     <h2><a href="#">test aaaaa</a></h2>
     <div class="news-content">Lorem ipsum lorem ipsum Lorem ipsum lorem ipsum Lorem ipsum lorem ipsum Lorem ipsum lorem ipsum Lorem ipsum lorem ipsum Lorem ipsum lorem ipsum Lorem ipsum lorem ipsum</div>
     <a href="#" class="read-more">Read more</a>
</div>

我希望根据div class="news-content"获取更多阅读按钮。我的jQuery代码如下所示:

$('.news-content').closest('a.read-more').on('click', function(){
// code here
});

但这不起作用。我在一个页面上有多个帖子,因此我无法$('a.read-more')

3 个答案:

答案 0 :(得分:7)

.closest()遍历DOM树。您需要的是.next()

$('.news-content').next('a.read-more')

答案 1 :(得分:5)

closest [API] 方法获得了一个祖先。您需要siblings [API] 方法。

$('.news-content').siblings('a.read-more').on('click', function(){
// code here
});

答案 2 :(得分:0)

您可以使用CSS选择器:

$('.news-content+a.read-more').on('click', function(){
    // code here
});

我认为它更好,因为现代浏览器支持选择器的本机搜索。