Jquery slideToggle() - 全部切换

时间:2013-03-19 08:37:13

标签: jquery

我有一个页面,其中有隐藏在其下方的答案。当有人点击一个问题时,答案会向下滑动(这是一个单独的功能,可以正常工作)。再次单击时,它将返回其隐藏状态。

当答案已经打开时,此功能会运行并打开所有已关闭的答案,但会关闭所有打开的答案。

我希望它打开所有并保持打开的答案打开,然后关闭所有并关闭已关闭的答案。

  <div id="hideMenu">
      <span style="display: inline;" class="title">Afficher
      tout</span>
      <span class="title" style="display: none;">Cacher
      tout</span>
      <span class="arrow"></span>
 </div>
 <div class="MppWP">
      <ul>
           <li class="MppAccordion">
                <h3 class="MppWPTitle grey1">
                <span class="MppOrder">1</span>Pr&#233;paration
                de l'appel &#224; candidatures (1er tour)
                <span class="arrow"></span></h3>
                <ul style="display: none;"
                class="MppWPContent">
                     <li>aaaaa</li></ul></li>

           <li class="MppAccordion">
                <h3 class="MppWPTitle grey1">
                <span class="MppOrder">1</span>Pr&#233;paration
                de l'appel &#224; candidatures (1er tour)
                <span class="arrow"></span></h3>
                <ul style="display: none;"
                class="MppWPContent">
                     <li>aaaaa</li></ul></li>
     </ul>
   </div>



$('#hideMenu').click(function () {
    //alert("ici");
    $(this).find(".title").toggle().end()
           .find('arrow').toggleClass('open');
    $(this).parent().find('.MppWP .MppAccordion .MppWPContent').slideToggle("normal").end()  
           .children('.arrow').toggleClass('open');
});

1 个答案:

答案 0 :(得分:0)

根据您在此处提到的内容,我认为您可以使用:visible选择器查找哪个可见,:hidden找到隐藏元素并执行切换操作。