2016-03-29 7 views
0

モバイルデバイスのみでアコーディオンメニューとして表示されるフッターがあります。したがって、ul要素は、モバイルデバイスでのみ読み込み時に非表示にする必要があります。一度に1つのセクションだけを開く必要があります。すでに開いているセクションがある場合は、別のセクションがトリガーされると閉じます(http://jsfiddle.net/auUxk/など)。私は以下のコードを持っていますが、現在はグローバルにdivをトリガーしています。モバイルビューで一度に1つのdivを切り替えます

<div class="col-md-3 col-sm-4"> 
    <div class="panel"> 
     <div class="panel-heading"> 
      <h4 class="panel-title">About us</h4> 
     </div> 
     <ul> 
      <li><a href="">Link</a> 
      </li> 
      <li><a href="">Link</a> 
      </li> 
      <li><a href="">Link</a> 
      </li> 
      <li><a href="">Link</a> 
      </li> 
      <li><a href="">Link</a> 
      </li> 
     </ul> 
    </div> 
</div> 
<div class="col-md-3 col-sm-4"> 
    <div class="panel"> 
     <div class="panel-heading"> 
      <h4 class="panel-title">Header</h4> 
     </div> 
     <ul> 
      <li><a href="">Link</a> 
      </li> 
      <li><a href="">Link</a> 
      </li> 
      <li><a href="">Link</a> 
      </li> 
      <li><a href="">Link</a> 
      </li> 
     </ul> 
    </div> 
</div> 

メディアクエリー

@media screen and (max-device-width: 480px) { 
    ul li{ 
    display:none; 
    } 
} 

jQueryの

$(document).ready(function($) { 
    $(".panel-title").click(function() { 
     $("li").slideToggle(500); 
    }); 
}); 

JSFIDDLEhttp://jsfiddle.net/auUxk/1115/

答えて

3

WあなただけのCSSを使用しないでください? 同じ名前のラジオボタンが機能します。

JSFIDDLE:(アニメーション付き)更新http://jsfiddle.net/0Ldpk0vy

JSFIDDLE:http://jsfiddle.net/0Ldpk0vy/1/

ul { 
    display: none; 
} 

[type="radio"] { 
    display: none; 
} 

[type="radio"]:checked + ul { 
    display: block; 
} 
+0

これは、リストを行うべきである可能性があるため。ラジオボタンでフィドルを投稿するように気をつけますか? – user3438917

+1

ラジオボタンの動作が必要ですが、そのボタンを非表示にする必要があります。 このように:http://jsfiddle.net/0Ldpk0vy/ – nlfonseca

+0

これは、マークアップにラジオボタンを追加するのではなく、jQueryで行う必要があります。 – user3438917

関連する問題