根据一个子jQuery单独隐藏下拉列表

individually hiding drop-downs according to one child-jquery

本文关键字:jQuery 单独 隐藏 下拉列表 一个      更新时间:2023-09-26

所以我在 JQuery 中痛苦地有多个下拉切换状态(隐藏和显示),但我有一些代码告诉侧边栏哪个页面处于活动状态并为其提供活动样式,如果其中有子项处于活动状态,我希望下拉列表不被隐藏。

如果它有一个活跃的孩子,您单击以查看下拉列表的顶级链接将获得 ID "HAC"(有活动的孩子),但我想我可能会为此绞尽脑汁。

这是一个带有问题工作演示的jsfiddle页面。

下拉菜单在导航中是这样设置

<ul id="HAC" class='topLevel'>                
   <li class='subItem'>
       <a class="active" href='thatpage.php'>That page</a>
   </li>
   <li class='subItem'>
       <a href='thatotherpage.php'>That other page</a>
   </li>
</ul>

提前感谢您的任何帮助

我认为你要找的是jQuery :not selector。这是你的小提琴的更新

function dropDowns() {
    //for each toplevel li a
    $(".topLevel:not(#HAC) li a").each(function() {
        //hide subitems if not HAC (has active children)
            $(this).hide();
    });
    //Toggle show them on click
    clickToggle();
}