首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery选项卡和子选项卡

jQuery选项卡和子选项卡
EN

Stack Overflow用户
提问于 2013-07-30 09:23:07
回答 2查看 1.1K关注 0票数 2

我一直在努力让这件事顺利进行,但我错过了一些东西。我想显示当前活动的选项卡。我正在使用jQuery来实现这一目标。

使用“主选项卡”.tabs_item,它可以正常工作,但如果我单击“子选项卡”项,我希望激活该“子选项卡”的父选项卡。

希望它写得够清楚。

HTML:

代码语言:javascript
复制
<div class="cssmenu">   
    <ul>
        <!-- 1 -->
        <li class='tabs_item' id='tabDemographic'><a href='#page-1' class='active_pat_tab'><span>Demographics</span></a></li>

        <!-- 2 -->
        <li class='has-sub tabs_item'><a href='#page-2'><span>Admission</span></a>
            <ul>
                <li id='tabAdmission' class='tabsub'><a href='#'><span>Admission detail</span></a></li>
                <li id='tabMedicalStaff' class='tabsub last_sub' ><a href='#page-12'><span>Staff</span></a></li>
            </ul>
        </li>

        <!-- 3 -->
        <li class='has-sub tabs_item'><a href='#'><span>History</span></a>
            <ul>
                <li class='tabsub' id='tabComorbidity'><a href='#page-6'><span>Co-Morb</span></a></li>
                <li class='tabsub last_sub' id='tabPMH'><a href='#page-7'><span>PMH</span></a></li>
            </ul>
        </li>

        <!-- 4 -->
        <li class='tabs_item' id='tabModalities'><a href='#page-10'><span>Modalities</span></a></li>
        <li class='tabs_item' id='tabAssessments'><a href='#page-8'><span>Assessments</span></a></li>
        <li class='last tabs_item' id='tabDischarge'><a href='#page-11'><span>Discharge</span></a></li>
    </ul>
</div>

jQuery:

代码语言:javascript
复制
$('.cssmenu ul li a').click(function() {
    $('.cssmenu ul li a.active_pat_tab').removeClass('active_pat_tab');
    $(this).closest('.cssmenu ul li a').addClass('active_pat_tab');
});

$('.cssmenu ul li ul li.tabsub a').click(function() {
    $('.cssmenu ul li a.active_pat_tab').removeClass('active_pat_tab');
    $(this).parents('.cssmenu ul li a').addClass('active_pat_tab');
});

剧本的第二部分是我似乎无法解决的错误/棘手的部分。

这里是小提琴

http://jsfiddle.net/nel

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-30 10:22:35

这是答案。

代码语言:javascript
复制
$(this).parents('ul').parents('li').find('a').addClass('active_pat_tab');

子选项卡的脚本将如下所示。

代码语言:javascript
复制
    $('.cssmenu ul li ul li.tabsub a').click(function() {
    $('.cssmenu ul li a.active_pat_tab').removeClass('active_pat_tab');
    $(this).parents('ul').parents('li').find('a').addClass('active_pat_tab');
});

这是小提琴

票数 1
EN

Stack Overflow用户

发布于 2013-07-30 10:58:00

试试这个..。

代码语言:javascript
复制
$(document).ready(function(){
    $('.cssmenu ul li a').click(function() {
        $('.cssmenu ul li a.active_pat_tab').removeClass('active_pat_tab');
        $(this).closest('.cssmenu ul li a').addClass('active_pat_tab');
    });

    $('.cssmenu ul li ul li.tabsub a').click(function() {

        $('.cssmenu ul li a.active_pat_tab').removeClass('active_pat_tab');
       $(this).parents().eq(2).children('a').addClass('active_pat_tab');
    });


});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17943088

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档