Jquery 在.not()中选择子项

Jquery 在.not()中选择子项,jquery,hide,children,Jquery,Hide,Children,抱歉,这里的代码片段不起作用 <ul> <li><a href="#" title="" class="active">d</a> <ul> <li><a href="#" title="">d</a></li> <li><a href="#" title="">d</a></li>

抱歉,这里的代码片段不起作用

<ul>  
  <li><a href="#" title="" class="active">d</a>  
    <ul>  
      <li><a href="#" title="">d</a></li>  
      <li><a href="#" title="">d</a></li>  
    </ul>  
  </li>  
  ...  
</ul>  

$('#menu > ul > li ul').click(function (e) {  
   e.stopPropagation();  
}).not(this.parent().find('a.active')).hide();  
请看一看.not语句。我试图在父li的兄弟a激活该类时显示子UL。我试过很多方法,兄弟姐妹,父母,找到,有班级。。但它们都不起作用。可能是因为我没有正确使用选择器


谢谢

您可以使用纯css实现:

.active + ul {
   display: block;
}
a + ul {
   display: none;
}
但是如果您想要jQuery,那么:

$('#menu > ul > li ul').click(function (e) {  
   e.stopPropagation();  
}).hide();
$('#menu > ul > li').has('.active').find('ul').show();

是更好的选择

我在格式化代码方面遇到了一些问题;我不知道为什么,但我很抱歉,谢谢。我试着用一行来做,但你的当然行了。