2013-05-12 49 views
0

基本上我有一个链接和一个div坐在他们的下面哪些内容被加载到。选择第一个div与类

在整个页面中有几个重复的块,所以我只想选择当前链接下面的“active”类的第一个div。

下面是一个小提琴,下面显示问题的实际情况。正如你所看到的,我试图使用:first,但是这会选择页面中的第一个,而不是当前链接下面的第一个。

http://jsfiddle.net/wdcn6/11/

$(function() { 
$('.accordionContent').hide(); 

    $(".accordionButton").click(function() { 

     var content_id = $(this).attr('href'); 

     $('.active:first').html($(content_id).html()).show(500); 
     return false; 
    }); 
}); 

回答

3

$('.active:first')本身总会匹配第一个.active在文档中。

$(this).find('~ .active:first').html($(content_id).html()).show(500); 

jsFiddle preview

或者使用$(this).nextAll()

$(this).nextAll('.active:first').html($(content_id).html()).show(500); 

为了只被点击,您可以使用$(this).find()与兄弟组合子链接后开始:first比赛jsFiddle preview

0

选中此的jsfiddle http://jsfiddle.net/wdcn6/14/

$(function() { 
    $('.accordionContent').hide(); 

     $(".accordionButton").click(function() { 

      var content_id = $(this).attr('href'); 

      $(this).nextAll('.active').first().html($(content_id).html()).show(500); 
      return false; 
     }); 
    }); 
0

大约是这样的内容:

$(content_id + ' ~ .active:first').html($(content_id).html()).show(500); 
相关问题