2016-01-22 39 views
1

我正在使用以下來創建選項卡式系統。用jQuery選項卡切換兩個單獨的div

我的問題是,除了標籤交換了標籤內容(目前有「Lorum存有」)以下的話,我也需要他們來切換圖像略高於他們在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越一次。
例如ID = 「TABL-1」 或ID = 「標籤-2」

給圖像一個額外的ID,並改變它在你的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 
    }); 
});