用jQuery瞄准孩子

时间:2011-03-24 21:42:24

标签: jquery

我有以下代码:

<div class="topLevel">
    <span class="misc pointDown"></span>
<span class="misc"></span>
<span class="b">item</span>
</div>

当我点击topLevel时,我需要将“pointDown”替换为“pointUp”。我认为我难以针对正确的元素。

$(".topLevel").live('click', function() {
    $(this).next("span").removeClass("pointDown").addClass("pointUp");
});

4 个答案:

答案 0 :(得分:4)

试试这个:

$(".topLevel").live('click', function() {
    $(this).children('.misc').first()
           .removeClass("pointDown").addClass("pointUp");
});

答案 1 :(得分:0)

$(".topLevel").live('click', function() {
   $(this).find("span:eq(0)").removeClass("pointDown").addClass("pointUp");
});

答案 2 :(得分:0)

$('.topLevel').live('click', function() {
    $(this).children('span.pointDown').removeClass("pointDown").addClass("pointUp"); });

答案 3 :(得分:0)

不要假设第一项是你的元素 - 这不是正确的答案(如果你问我)。

$('.topLevel').click(function() {
     $(this).find('.misc.pointDown').removeClass('pointDown').addClass('pointUp');
}