处理DOM元素,找到下一个类

时间:2015-01-18 03:27:11

标签: javascript jquery

我在处理DOM元素时遇到问题。

这是我的HTML:

<div class="movie__feature">
    <a href="#" data-value="86" data-user="35" class="voting plus">▲</a>
</div>
<div class="movie__images">
    <span class="similarity_points">9</span>
    <a href="http://www.filmypodobnedo.pl/Top-Gun/" title="Filmy podobne do Top Gun">
        <img alt="Filmy podobne do Top Gun" src="http://www.filmypodobnedo.pl/photos/Top-Gun.jpg"/>
    </a>
</div>
<div class="movie__feature">
    <a href="#" data-value="86" data-user="35" class="voting minus">▼</a>
</div>
</div>

当我点击.plus类时,我需要去.similarity。

这是我的jQuery:

$('.plus').click(function(e){
    e.preventDefault();
    var self = $(this);
    self.closest('div').find('.similarity_points').text('10');
}

我的数字应该如何?

2 个答案:

答案 0 :(得分:1)

最近的div不包含.similarity_points作为后代。你可以用这个:

self.closest('div').parent().find('.similarity_points').text('10');

但是,请注意,高度依赖于DOM结构的代码也很脆弱。

答案 1 :(得分:1)

在您的代码中,您将升级到.movie__feature,然后您正在寻找.similarity_points班级的孩子。

你需要再上一级,然后寻找子元素:

$('.plus').click(function () {
    $(this).closest('div').parent().find('.similarity_points').text('10');
    return false;
});