使用jquery选项卡切换两个单独的Div

时间:2016-01-22 21:55:05

标签: javascript jquery jquery-ui

我使用以下内容创建标签式系统。

我的问题是,除了选项卡内容切换选项卡内容(目前还有Lorum 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 -->

1 个答案:

答案 0 :(得分:2)

在您的示例中,您一次使用相同的ID 例如的 ID =&#34; TABL-1 &#34;或 id =&#34; tab-2&#34;

为图像添加额外的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
    });
});