HTML:
<div class="article">
<div class="article-content">
<p><a href="javascript:;">Flygor</a> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam et est sit amet eros inter dum auctor vel semper quam. Vivamus non purus amet.</p>
<div class="wrap btn-actions">
<div class="col"><a href="#" class="bt bt-medium" title="Retweet this" target="_blank">REPLY</a>
<a href="javascript:;" class="bt bt-large retweet">RETWEET</a><a href="javascript:;" class="bt bt-icon">
</div>
</div>
</div>
我有这个Javascript:
$('.retweet').click(function() {
var retweetText = $(this).('.article-content p').text();
});
所以我想在DIV.article-content中使用p标签,但只是在这一个。我在页面上有大约10篇文章内容,当这个人点击DIV.retweet时我只想在那个DIV中拉出p标签。
答案 0 :(得分:3)
实际上你的Javascript非常接近。您需要使用.parents()
,因为.article-content
是.retweet
以上的多个父母,然后转到孩子p
。
编辑:
正如@ShaneBlake指出的那样,.closest()
更适合这种情况。 .closest()
只会抓取其遍历的第一个.article-content
,而.parents()
会抓住它们。因此,代码现在。
$('.retweet').click(function() {
$(this).closest('.article-content').children('p').text();
});
答案 1 :(得分:1)
试试这个:
var retweetText = $(this).closest('.article-content').children('p').text();