タブの選択でクエリをつける
タブの選択で、ページ遷移をせずにクエリをつけたいです。
特にコードなどまだ作成していませんが、
0. ページ遷移はなし。
0. タブの画面が切り替わるのをトリガーに
そのタブの表示ごとにURLにクエリをつける
この2点の動作をしたいです。
試したこと
タブを作りました。
HTML
1 2<ul class="tab-group"> 3 <li class="tab is-active">Tab-A</li> 4 <li class="tab"><a href="/works/?shop">Tab-B</a></li> 5 <li class="tab">Tab-C</li> 6</ul>
css
1 .tab-group{ 2 display: flex; 3 justify-content: center; 4} 5.tab{ 6 flex-grow: 1; 7 padding:5px; 8 list-style:none; 9 border:solid 1px #CCC; 10 text-align:center; 11 cursor:pointer; 12} 13.panel-group{ 14 height:100px; 15 border:solid 1px #CCC; 16 border-top:none; 17 background:#eee; 18} 19.panel{ 20 display:none; 21} 22.tab.is-active{ 23 background:#F00; 24 color:#FFF; 25 transition: all 0.2s ease-out; 26} 27.panel.is-show{ 28 display:block; 29}
js
1jQuery(function($){ 2 $('.tab').click(function(){ 3 $('.is-active').removeClass('is-active'); 4 $(this).addClass('is-active'); 5 $('.is-show').removeClass('is-show'); 6 const index = $(this).index(); 7 $('.panel').addClass('is-show'); 8 }); 9});
そのタブにアンカーで
<a href="/?id=hogehoge"></a>
とつければ、ページ遷移でクエリが着くのはわかるのですが、
これをページ遷移なしで、クエリだけ変更する方法がわかりません。
このクエリが変更できるのならば、そのクエリで、ループ変更しようと考えております。
まずはタブのところを
ご享受いただけれたらと思います。
よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー