向下滑动以查看常见问题

时间:2015-10-08 15:32:57

标签: javascript toggle slidedown toggleclass

我试图在博客上设置常见问题解答页面并努力使代码正确。这就是我想要做的事情> http://jsfiddle.net/qwL33/

实际上一切都没问题但是当点击第一部分时(让我们假设这是问题1),它打开了两个部分(意味着两个问题)。 HELP。

以下是代码:



    $('#slidetoggle')
      .on('click', function(e) {
        jQuery('.slider').toggle('slideDown');
      });

<div id="slidetoggle">HELLO 1</div>
<div class="slider" style="display: none">Hello there!</div>

<div id="slidetoggle">HELLO 2</div>
<div class="slider" style="display: none">Hello there!</div>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

到目前为止这不是最好的选择,但你的问题是你正在复制相同的ID(slidetoggle),我再次添加了相同的功能并替换了添加2的id,你可以在这个小提琴中看到它{ {3}} 最好的方法是创建一个关闭所有可见的函数,然后打开单击的那个。

   $('#slidetoggle2')
.on('click', function(e){
    var $this = $(this),
        $slider = $('.slider'),
        isOpened = $slider.is(':visible');

    if (isOpened)
    {
        $slider.slideUp();
        $this.text('show fields');
    }
    else
    {
        $slider.slideDown();
        $this.text('hide fields');
    }
});
相关问题