使用相同的类切换div,但是不是一次全部?

时间:2012-06-06 07:29:23

标签: javascript jquery

我有以下HTML,因为我正在使用Wordpress,我无法更改每个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都会显示“extended”类。我想只显示div点击的扩展名。任何人都可以帮我这个吗?

2 个答案:

答案 0 :(得分: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);
});

答案 1 :(得分:3)

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

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