2012-06-06 41 views
4

我有以下的HTML,因为我使用Wordpress,我无法更改每个div的类。用相同的类切换div,但不是一次全部切换?

<div class="show_hide">content1</div> 
<div class="extended">extension of content 1</div> 
<div class="show_hide">content2</div> 
<div class="extended">extension of content 2</div> 

我的jQuery脚本如下:

<script type="text/javascript"> 

    $(document).ready(function(){ 


     $(".sliding").hide(0); 
     $(".show_hide").show(0); 

    $('.show_hide').click(function(){ 
    $(".sliding").slideToggle(0); 
    }); 

}); 

</script> 

现在,在show_hide DIV点击时,既DIV与类 “扩展” 节目。我只想显示div点击的扩展名。谁能帮我这个?

回答

7

如果.extended元素是紧随.show_hide元素的兄弟姐妹,你可以使用next

$('.show_hide').click(function(){ 
    $(this).next().slideToggle(0); 
}); 

如果在两者之间有其他的元素,你可以使用nextAll,然后减少选择到第一匹配(与eq):

$('.show_hide').click(function(){ 
    $(this).nextAll('.extended').eq(0).slideToggle(0); 
}); 
+0

非常感谢您亲切的先生!这就是诀窍! –

+0

@RobinPapa - 没问题,很高兴我可以帮助:) –

3

在回调函数,变量this将包含对DOM节点的引用引发了事件:

$(this).next().slideToggle(0);