2017-02-03 3 views
0

今、私は自分のウェブページ上のいくつかの場所でこのアコーデオンを使用しています。現在、開いているときは、アコーディオンの内側をクリックすると折りたたまれます。私は、アコーデオンの上部部分、実際にはボタン部分が崩壊して、アコーデオンのコンテンツにリンクやその他のものを追加できるようにしたいと思います。ここで https://jsfiddle.net/nc4euge3/ボタンをセクションを崩壊させるにはどうすればいいですか?

それはそれなしでjsのフィドルにリンクすることはできませんので、いくつかのコードです:

<script src="//code.jquery.com/jquery-1.11.0.min.js"></script> 
<div class="accordion"> 
    <div class="accordion-item"> 
     <div class="accordion-button"> 
      <h3> 
      <div class="accordion-marker"><i class="fa fa-plus"></i></div><span class="question">Thing #1</span> 
     </h3> 
    </div> 
    <p> 
     text text text text text text text 
     text text text text text text text 
     text text text text text text text 
     text text text text text text text 
     text text text text text text text 
     text text text text text text text 
     text text text text text text text 
     text text text text text text text 
    </p> 
</div> 
+0

テキストをクリックしたときに+シング1の部分を非表示にするしたいですか? –

+0

いいえ、それを隠す必要はありません、それが残っていれば、それが望ましいでしょう。ユーザーが誤ってドロップダウン部分をクリックした場合に閉じるのではなく、閉じるためにクリックするようにしてください – mpeterson

答えて

0

あなたはそこに小さな微調整が必​​要になります - ボタンをクリックし、全体ではなくアコーディオン項目に耳を傾けます。

チェックデモ - https://fiddle.jshell.net/ermakovnikolay/nc4euge3/2/

$(document).ready(function() { 
    var $accordion = $('.accordion .accordion-item'); 
    $('.accordion-button').click(function() { /* change to the button */ 
     var $this = $(this).parent(); /* update to get the accordion item container */ 
     if ($this.hasClass('active')) { 
      $this.removeClass('active').find('i').removeClass('fa-minus').addClass('fa-plus'); 
     } else { 
      $accordion.removeClass('active'); 
      $this.addClass('active'); 
      $accordion.find('i').removeClass('fa-minus').addClass('fa-plus'); 
      $this.find('i').addClass('fa-minus') 
     } 
    }); 
}); 
+0

はい!これは完璧です。あなたは素晴らしいです。 1つの小さな微調整がそれほど大きな違いをもたらすことが分かっていた。確かに私ではない、thats確かに、笑 – mpeterson

+0

確かに、私は助けてうれしい)) –

関連する問題