2013-01-08 40 views
1

可能重复:
jquery traversing to find a parent’s parentjQuery选择.parent

我有一个小问题,jQuery选择,并试图自己一段时间后,我决定,我需要一些帮助,这个。

我有一个名为.submenu的类,里面的.submenu是一个< p>元素,类为“groen”。 .submenu元素位于类“container_vragen”的div内。这是一个名为“#content_vragen”的容器标识。

<div id="content_vragen"> 

    <div class="container_vragen"> 
     <div class="submenu"> 
      <p class="groen">groen</p> 
     </div> 
    </div> 

    <div class="container_vragen"> 
     <div class="submenu"> 
      <p class="groen">groen</p> 
     </div> 
    </div> 

    <div class="container_vragen"> 
     <div class="submenu"> 
      <p class="groen">groen</p> 
     </div> 
    </div> 

</div> 

$('.submenu').on('click','.groen',function() { 
    $(this).parents('#content_vragen').find('.container_vragen').fadeOut(400, function() { 
     $(this).parents('#content_vragen').find('.container_vragen').css('overflow', 'hidden'); 
     $(this).parents('#content_vragen').find('.container_vragen').appendTo("#geregeld"); 
     $(this).parents('#geregeld').find('.container_vragen').css('color', 'green'); 
     $(this).parents('#geregeld').find('.container_vragen').fadeIn(400); 
    }); 
}); 

所以我很容易的问题是:我该怎么做一个动作只在其中的类被点击.groen的.container_vragen类。我以为我必须选择这个(.groen按钮)的父级,并将其返回到.container_vragen,但这样它会选择所有.container_vragen元素。只是为了让事情变得更简单,这里的整个项目的的jsfiddle:http://jsfiddle.net/86Hcc/

+0

结账答案最接近的类.. – insomiac

回答

2

您可以使用皮卡closest()

$('.submenu').on('click','.groen',function() { 
    $closestDiv = $(this).closest('.container_vragen'); 
    $closestDiv.fadeOut(400, function() { 
     $closestDiv.css('overflow', 'hidden'); 
     $closestDiv.appendTo("#geregeld"); 
     $(this).parents('#geregeld').find('.container_vragen').css('color', 'green'); 
     $(this).parents('#geregeld').find('.container_vragen').fadeIn(400); 
    }); 
});