选项卡的下一个,上一个链接

时间:2012-06-20 19:10:17

标签: jquery

我有一个jQuery选项卡,这是我的代码:

$(document).ready(function() {
    //When page loads...
    $(".tab_content").hide(); //Hide all content
    $("ul.tabs li:first").addClass("active").show(); //Activate first tab
    $(".tab_content:first").show(); //Show first tab content

    //On Click Event
    $("ul.tabs li").click(function() {
        $("ul.tabs li").removeClass("active"); //Remove any "active" class
        $(this).addClass("active"); //Add "active" class to selected tab
        $(".tab_content").hide(); //Hide all tab content

        var activeTab = $(this).find("a").attr("href"); //Find the href attribute value to identify the active tab + content
        $(activeTab).fadeIn(); //Fade in the active ID content
        return false;
    });
});​

我如何获取标签的下一个和上一个链接?

这是我的HTML代码:

<ul class="tabs">
    <li>
        <a href="#tab1">Tab1</a>
    </li>
    <li>
        <a href="#tab2">Tab2</a>
    </li>
    <li>
        <a href="#tab3">Tab3</a>
    </li>
</ul>
<div class="tab_container">
    <div id="tab1" class="tab_content">Content 1</div>
    <div id="tab2" class="tab_content">Content 2</div>
    <div id="tab3" class="tab_content">Content 3</div>
</div>​

您的帖子没有太多上下文来解释代码部分;请更清楚地解释一下你的情景。

2 个答案:

答案 0 :(得分:2)

以下是“下一步”链接的快速草稿:

$('#next').click(function() {
    var activeTab = $('.tab_container div.tab_content:visible');
    var nextTab = activeTab.next();
    if(nextTab.length) {
        activeTab.hide();
        nextTab.show();
    }
});

对于“上一个”链接,只需使用next()更改prev()(并相应更改$('#next')

答案 1 :(得分:0)

参考 LIVE DEMO

我已经为你的JQuery和HTML应用了额外的CSS类,如下所示: -

ul.tab li {
    display: none;
}
.active {
    display: block;
}

看起来工作正常。再看一遍。