2016-01-22 2 views
1

Я использую ниже, чтобы создать систему с вкладками.Переключить два отдельных разделителя с вкладками jquery

Моя проблема заключается в том, что в дополнение к вкладкам, отключающим содержимое вкладки (в настоящее время «Лорум Ipsum») под ним, мне также нужно, чтобы они отображали изображения чуть выше их в dom.

Когда пользователь нажимает одну из других вкладок, он одновременно переключает содержимое и изображение.

Основная рабочая Codepen здесь, минус часть изображения: http://codepen.io/cssjockey/pen/jGzuK

JS

$(document).ready(function(){ 

    $('ul.tabs li').click(function(){ 
     var tab_id = $(this).attr('data-tab'); 

     $('ul.tabs li').removeClass('current'); 
     $('.tab-content').removeClass('current'); 

     $(this).addClass('current'); 
     $("#"+tab_id).addClass('current'); 
    }) 

}) 

HTML

<div class="container">  
    <div class="img-switch"> 
    <div id="tab-1" class="tab-content"><img src="#"></div> 
    <div id="tab-2" class="tab-content current"><img src="#"></div> 
    </div> 

     <ul class="tabs"> 
      <li class="tab-link current" data-tab="tab-1">Tab One</li> 
      <li class="tab-link" data-tab="tab-2">Tab Two</li> 
      <li class="tab-link" data-tab="tab-3">Tab Three</li> 
      <li class="tab-link" data-tab="tab-4">Tab Four</li> 
     </ul> 

     <div id="tab-1" class="tab-content current"> 
      Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 
     </div> 
     <div id="tab-2" class="tab-content"> 
      Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. 
     </div> 
     <div id="tab-3" class="tab-content"> 
      Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. 
     </div> 
     <div id="tab-4" class="tab-content"> 
      Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 
     </div> 

    </div><!-- container --> 

ответ

2

В вашем примере вы используете тот же идентификатор еще в один раз.
, например. ID = "1-табл" или ID = "Вкладка-2"

Дайте изображения дополнительный идентификатор и изменить его в Js части.

См: http://codepen.io/anon/pen/LGQxEe

<div id="img-tab-1" class="tab-content"><img src="https://pbs.twimg.com/profile_images/1137733055/asd-dot_normal.png"></div> 
<div id="img-tab-2" class="tab-content current"><img src="https://pbs.twimg.com/profile_images/3251986873/d21652dc07a281c96dd2cd8b37311788_normal.png"></div> 

$(document).ready(function(){ 

    $('ul.tabs li').click(function(){ 
     var tab_id = $(this).attr('data-tab'); 

     $('ul.tabs li').removeClass('current'); 
     $('.tab-content').removeClass('current'); 

     $(this).addClass('current'); 
     $("#"+tab_id).addClass('current'); 
     $("#img-"+tab_id).addClass('current'); // See this line 
    }); 
}); 
Смежные вопросы