停止 Jquery nth-child 影响 sub-children
Stop Jquery nth-child affecting sub-children
请看下面我的代码。这是我面临的问题的简化版本:我想在第二段之后插入一些文本,但不在块引用中。目前,我的 jquery 使我的新文本出现在内容中的第二段和块引用中的第二段之后。
我知道 nth-child 是如何工作的,但还没有找到限制它走多远的方法。
谢谢。
<div class="content">
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
<blockquote>
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
</blockquote>
</div>
<script>
$( "<p><strong>I AM NEW TEXT</strong></p>" ).insertAfter( ".content p:nth-child(2)" );
</script>
将它与 child selector 一起使用到 select 只有直系子
.content p:nth-child(2)
使用后代关系,因此它将匹配 .content
元素内的所有第二个子元素(在所有级别)
$("<p><strong>I AM NEW TEXT</strong></p>").insertAfter(".content > p:nth-child(2)");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="content">
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
<blockquote>
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
</blockquote>
</div>
将其替换为子选择器:
$( "<p><strong>I AM NEW TEXT</strong></p>" ).insertAfter( ".content > p:nth-child(2)" );
请看下面我的代码。这是我面临的问题的简化版本:我想在第二段之后插入一些文本,但不在块引用中。目前,我的 jquery 使我的新文本出现在内容中的第二段和块引用中的第二段之后。
我知道 nth-child 是如何工作的,但还没有找到限制它走多远的方法。
谢谢。
<div class="content">
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
<blockquote>
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
</blockquote>
</div>
<script>
$( "<p><strong>I AM NEW TEXT</strong></p>" ).insertAfter( ".content p:nth-child(2)" );
</script>
将它与 child selector 一起使用到 select 只有直系子
.content p:nth-child(2)
使用后代关系,因此它将匹配 .content
元素内的所有第二个子元素(在所有级别)
$("<p><strong>I AM NEW TEXT</strong></p>").insertAfter(".content > p:nth-child(2)");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="content">
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
<blockquote>
<p>Lorem ipsum dolor sit amet.</p>
<p>Lorem ipsum dolor sit amet.</p>
</blockquote>
</div>
将其替换为子选择器:
$( "<p><strong>I AM NEW TEXT</strong></p>" ).insertAfter( ".content > p:nth-child(2)" );