繁体   English   中英

如何在jQuery中选择没有特定元素的元素

[英]How to select elements in jQuery that don't have a specific element in it

如何在jQuery中选择没有特定元素的元素。 我要制作一个侧边栏,该边栏将在用户单击菜单或侧边栏本身后关闭,但仅限于下拉菜单。 这是菜单的结构代码:

<li><a href="#">Menu Normal</a></li>
<li>
  <a href="#">Menu Dropdown</a>
  <ul class="sidebar-nav-child">
    <li><a href="#">Menu-1</a></li>
    <li><a href="#">Menu-1</a></li>
    <li><a href="#">Menu-1</a></li>
  </ul>
</li>

这是jQuery:

$(".sidebar-toggle").click(function(e){
  e.preventDefault();
  $("#wrapper").addClass('sidebar-show');
  $("#sidebar, .sidebar-nav li:not(:has(.sidebar-nav-child)) a").click(function(){
    $("#wrapper").removeClass('sidebar-show');
  });
});

即使我单击下拉菜单,上面的代码仍将关闭边栏。 先感谢您。

您需要处理的li.sidebar-nav直接子级,并且不包含嵌套的ul

 $("#sidebar, .sidebar-nav > li:not(:has(ul)) a")

但是我还不清楚在这里#sidebar作用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM