代码之家  ›  专栏  ›  技术社区  ›  Hugo LOPEZ

如何在不使用jquery选择所有p元素的情况下选择邻近p元素

  •  -2
  • Hugo LOPEZ  · 技术社区  · 6 年前

    如果一个dom是这样的:

    <h2>Title</h2>
    <p>Text</p>
    <h2>Title</h2>   <-- click this
    <p>Text</p>       <-- toogle this
    <p>Text</p>       <-- and this
    <p>Text</p>       <-- and this. ONLY.
    <h2>Title</h2>
    <p>Text</p>
    <p>Text</p>
    

    如何切换 p 直接在a下的元素 h2 标题而不是另一个 元素?

    1 回复  |  直到 6 年前
        1
  •  1
  •   Carsten Løvbo Andersen Dan Nemtanu    6 年前

    请注意,您缺少 / 在每个结尾处 <p> 应该是 <p>Text</p>

    你可以使用 .nextUntil("h2")

    这样地:

    $("h2").click(function(){
      $(this).nextUntil("h2").toggle();
    });
    

    工作演示

    $("h2").click(function(){
      $(this).nextUntil("h2").toggle();
    });
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <h2>Title</h2>
    <p>Text</p>
    <h2>Title</h2>
    <p>Text</p>
    <p>Text</p>
    <p>Text</p>
    <h2>Title</h2>
    <p>Text</p>
    <p>Text</p>