如何切换活动标签?

时间:2016-02-01 07:33:39

标签: javascript jquery css tabs

我的意思是像手风琴导航首先点击打开它第二次点击隐藏它

演示链接:http://codepen.io/cowardguy/pen/dGKEjy

你可以看到上面的链接

$("ul.otel-filtre-fiyat-tab li").click(function(){
        /*
            $(this).parents(".otel-tekli-listeleme").find(".otel-full-detay").slideToggle();
        */
        var number = $(this).index();
        $("ul.otel-filtre-fiyat-tab li").removeClass("tab-aktif-hover");
        $(this).parents(".otel-tekli-listeleme").find(".otel-tab-icerik").hide().eq(number).slideDown("fast");
        $(this).parents(".otel-tekli-listeleme").find("ul.otel-filtre-fiyat-tab li").eq(number).addClass("tab-aktif-hover");
        return false;
    });

您可以点击标记区域

you can click marked area

1 个答案:

答案 0 :(得分:1)

问题在于这一行:

$(this).parents(".otel-tekli-listeleme").find(".otel-tab-icerik").hide().eq(number).slideDown("fast");

我删除了hide方法,并使用slideToggle代替slideDown

$(this).parents(".otel-tekli-listeleme").find(".otel-tab-icerik").eq(number).slideToggle("fast");

我也改变了最后一行:

$(this).parents(".otel-tekli-listeleme").find("ul.otel-filtre-fiyat-tab li").eq(number).toggleClass("tab-aktif-hover");

这样,如果选项卡关闭,将删除边框颜色。您还需要删除removeClass行。结果:

$("ul.otel-filtre-fiyat-tab li").click(function(){
    var number = $(this).index();

    $(this).parents(".otel-tekli-listeleme").find(".otel-tab-icerik").not(':eq(' + number + ')').slideUp("fast");
    $(this).parents(".otel-tekli-listeleme").find("ul.otel-filtre-fiyat-tab li").not(':eq(' + number + ')').removeClass("tab-aktif-hover");

    $(this).parents(".otel-tekli-listeleme").find(".otel-tab-icerik").eq(number).slideToggle("fast");
    $(this).parents(".otel-tekli-listeleme").find("ul.otel-filtre-fiyat-tab li").eq(number).toggleClass("tab-aktif-hover");
    return false;
});