初心者です。
以下のアコーディオンメニュー**(各ページのサイドに設置)**を、リンクをクリックした時に、リンク先でURLに特定のパラメータを付与して、クリックしたグループのものだけ開いている(メニューが開いている)状態にしたいです。
(例、menu1-1をクリック後、category1はリンク先で開いたまま。他のcategoryは閉じている。)
カテゴリー1(リンクメニュー数:3)、カテゴリー2(リンクメニュー数:18)
カテゴリー3(リンクメニュー数:6)、カテゴリー4(リンクメニュー数:3)
カテゴリー5(リンクメニュー数:5)、カテゴリー6(リンクメニュー数:3)
カテゴリー7(リンクメニュー数:2)、カテゴリー8(リンクメニュー数:18)です。
カテゴリー毎にパラメータの数を変えて付与し、
URLで「?menu=1」~「?menu=8」が表示されているのは確認できました。
URLのパラメータを取得し、条件判定して状況に応じて該当のメニューにクラスを付与してオープン状態にしておく為のコードを教えていただけますでしょうか。
**※試しにパラメータを取得し、値が1の場合にクラスを付与してみましたが、リンク先でカテゴリー1のメニューは閉じたままでした。
**
返信遅くなり大変申し訳ございませんでした。
html
1(例) 2<ul> 3<li> 4<div class="category">category1</div> 5<ul class="fxmn"> 6<li><a href="http://www.com/11?menu=1">menu 1-1</a></li> 7<li><a href="http://www.com/12?menu=1">menu 1-2</a></li> 8<li><a href="http://www.com/13?menu=1">menu 1-3</a></li> 9</ul> 10</li> 11<li> 12<div class="category">category2</div> 13<ul class="fxmn"> 14<li><a href="http://www.com/21?menu=2">menu 2-1</a></li> 15<li><a href="http://www.com/22?menu=2">menu 2-2</a></li> 16<li><a href="http://www.com/23?menu=2">menu 2-3</a></li> 17</ul> 18</li> 19<li> 20<div class="category">category3</div> 21<ul class="fxmn"> 22<li><a href="http://www.com/31?menu=3">menu 3-1</a></li> 23<li><a href="http://www.com/32?menu=3">menu 3-2</a></li> 24<li><a href="http://www.com/33?menu=3">menu 3-3</a></li> 25</ul> 26</li> 27</ul>
javascript
1$(function(){ 2 $("ul.fxmn").hide(); 3 $("div.category").click(function(){ 4 $("ul.fxmn").slideUp(); 5 if($("+ul",this).css("display")=="none"){ 6 $("+ul",this).slideDown(); 7 } 8 }); 9 }); 10var param = getParam('menu'); // 11if (param == 1) { 12 menu.classList.add('is-menuOpen'); 13}