2016-09-19 54 views
0

当用户点击标签下一个标签和任何标签时,添加类,但现在我需要在用户点击和上一个标签时删除class =“tbcb”。就像当我点击所有选项卡然后点击第4或第1个选项卡时,将面包屑绿色的颜色更改为灰色,以显示所有下一个面包屑与活动面包屑或以前的面包屑。当用户点击上一个标签时从类别中删除类

// breadcrumb code is here 
    $('a[data-toggle="tab"]').on('shown.bs.tab', function (e) { 
     var target = $(e.target).addClass('fn'); // activated tab 
     if(target.hasClass('fn')){ 
      target.closest('.tab-link').find('#tbcp').addClass('tbcb'); 
      //alert("success"); 
     }else{ 
      target.closest('.tab-link').css('display' , 'none'); 
     } 
    }); 

Example

回答

1

如果我理解正确的,你那么我认为你需要这种行为:

https://jsfiddle.net/pod4fob1/7/

$('a[data-toggle="tab"]').on('shown.bs.tab', function(e) { 
    var target = $(e.target).addClass('fn'); // activated tab 

    if ($(".tbcb").length < $(".tab-link").length) { 
    target.closest('.tab-link').find('#tbcp').addClass('tbcb'); 
    } else { 
    var index_1 = target.closest('.tab-link').index(); 

    $(".tab-link:gt(" + index_1 + ")").each(function() { 
     $(this).find('#tbcp').removeClass('tbcb'); 
    }); 

    } 

}); 
+0

感谢你最大的努力。但我需要你多一点帮助。 当我点击所有标签后,我点击第三个标签,然后第4或第5个面包屑是联合国选定的。不断地当我点击1或0选项卡什么都没有发生时,请你解决这个问题。 –

+0

简而言之:如果我们在第4个选项卡上(不管之前是否完成了所有选项卡),并尝试使用较低的数字选项卡,则所有其他较高的选项卡应标记为未完成。这个陈述是正确的吗? – vijayP

0

您可以使用$(本)获得当前元素,然后获得它的父和搜索父为使用div类你的div里面,这样

<div class="boxwrap"> 
    <a href="javascript:;" class="button" id="button1">Go</a> 
    <div class="boxwrap_inner noDisplay" id="content1"> 
     Content goes here 
    </div> 
</div> 
<div class="boxwrap"> 
    <a href="javascript:;" class="button" id="button2">Go</a> 
    <div class="boxwrap_inner noDisplay" id="content2"> 
     Content goes here 
    </div> 
</div> 

JS :

$('.button').click(function() { 
    $(this).parent().find(".boxwrap_inner").slideToggle(200); 
}); 

你可以检查一个工作的例子从你的小提琴分叉在这个fi ddle https://jsfiddle.net/mn6khese/

相关问题