2017-03-22 6 views
-1

2つのタブの2つのメニューを表示するこのコードは、ページをリフレッシュした後に現在開いているタブがリセットされないようにするにはどうすればよいですか?ページリフレッシュ/ブートストラップ後に開いたタブを保持する

<script type="text/javascript"> 
          $(document).ready(function(){ 
           $('a[data-toggle="tab"]').on('show.bs.tab', function(e) { 
            localStorage.setItem('activeTab', $(e.target).attr('href')); 
           }); 
           var activeTab = localStorage.getItem('activeTab'); 
           if(activeTab){ 
            $('#subtabs a[href="' + activeTab + '"]').tab('show'); 
           } 
          }); 
          </script> 

         <ul id="subtabs" class="nav nav-tabs" role="tablist"> 
          <li role="presentation" class="active"><a href="#artists" aria-controls="artists" role="tab" data-toggle="tab">Artists</a></li> 
          <li role="presentation"><a href="#subjects" aria-controls="subjects" role="tab" data-toggle="tab">Subjects</a></li> 
         </ul> 

         <div class="tab-content"> 
          <div role="tabpanel" class="tab-pane active" id="artists"> 
           <ul> 
           <?php $loop = new WP_Query(array('post_type' => 'artist', 'posts_per_page' => -1)) ; while ($loop->have_posts()) : $loop->the_post(); ?> 

            <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li> 

           <?php endwhile; ?> 
           </ul> 
          </div> 
          <div role="tabpanel" class="tab-pane" id="subjects"> 
           <ul> 
           <?php $tax_terms = get_terms('subject'); 

            foreach($tax_terms as $term) { 

             $term_link = get_term_link($term); 

             if (is_wp_error($term_link)) { 
              continue; 
             } ?> 

             <li><a href="<?php echo esc_url($term_link); ?>"><?php echo $term->name; ?></a></li> 

           <?php } ?> 
           </ul> 
          </div> 
         </div> 

答えて

2

これを達成する最も簡単な方法は、localStorageを使用することです。タブリストをクリックするたびに、それをlocalstorageに追加し、reloadするとそのアイテムとその特定のクラスをアクティブにする特定のタブを取得します。ここで

はtutorialrepublicからのリンクです:http://www.tutorialrepublic.com/codelab.php?topic=faq&file=bootstrap-keep-last-selected-tab-active-on-page-refresh

+0

ないのはなぜdownvoteは...多分例で答えを肉付けしてください..私もこれを示唆し、または可能性クッキー – Dale

+0

なぜの使用のでしょうdownvote? –

+0

これは解決策のように見えますが、私はそれを試してもまだ運がありません。この解決策を念頭に置いて質問を更新しました。 –

関連する問題