Jquery 显示前3个父元素(li元素),但我可以';I don’我不知道如何忽视孩子们

Jquery 显示前3个父元素(li元素),但我可以';I don’我不知道如何忽视孩子们,jquery,Jquery,我试图展示前三位家长(li元素),但我不知道如何忽略孩子 例如,我有以下列表: <ul id="myList"> <li>One</li> <li>Two<ul> <li>Two-One</li> </ul> </li> <li>Three</li> <li>Four</li> </ul>

我试图展示前三位家长(li元素),但我不知道如何忽略孩子

例如,我有以下列表:

<ul id="myList">
    <li>One</li>
    <li>Two<ul>
      <li>Two-One</li>
    </ul>
</li>
    <li>Three</li>
<li>Four</li>
</ul>
  • 一个
  • 两个
    • 二一
当我运行以下代码来显示前3个元素时:

$('#myList li:lt(3)').show();

<ul id="myList">
    <li>One</li>
    <li>Two<ul>
      <li>Two-One</li>
    </ul></li>
    <li>Three</li>
    <li>Four</li>
</ul>
$('myList li:lt(3)').show();
  • 一个
  • 两个
    • 二一
我得到:

<ul id="myList">
    <li>One</li>
    <li>Two<ul>
      <li>Two-One</li>
    </ul>
</li>

</ul>
  • 一个
  • 两个
    • 二一
我想要的是:

<ul id="myList">
    <li>One</li>
    <li>Two<ul>
      <li>Two-One</li>
    </ul>
</li>
    <li>Three</li>
</ul>
  • 一个
  • 两个
    • 二一

我只想忽略计数中的li children元素。

您可以修改选择器,使其仅包含父级的直接子级
ul

$('#myList > li:lt(3)').show();

是“子组合器”选择器:

您可以修改选择器,使其仅包含父级的直接子级
ul

$('#myList > li:lt(3)').show();

是“子组合器”选择器:

您希望选择仅为直接后代的
li
元素

$('#myList > li:lt(3)').show();

您希望选择仅为直接后代的
li
元素

$('#myList > li:lt(3)').show();

尝试显示所有
  • ,然后明确排除下一步不想显示的内容:

    片段1
    $('li').show().css('color','red');
    $('li+ol>li').hide()
    
    
    不想显示sub2.1

  • 项目1
  • 项目2
  • 次级2.1
  • 项目3

  • 尝试显示所有
  • ,然后明确排除下一步不想显示的内容:

    片段1
    $('li').show().css('color','red');
    $('li+ol>li').hide()
    
    
    不想显示sub2.1

  • 项目1
  • 项目2
  • 次级2.1
  • 项目3