请参阅下面的代码。这是我面临的问题的简化版本:我想在第二段之后插入一些文本,但不是在blockquote中。目前我的jquery正在使我的新文本出现在内容的第2段和块引用的第2段之后。
我知道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>
答案 0 :(得分:2)
与child selector一起使用以仅选择直接孩子
@Provider
public class ObjectMapperContextResolver implements ContextResolver<ObjectMapper> {
private final ObjectMapper defaultMapper;
public ObjectMapperContextResolver() {
defaultMapper = new ObjectMapper();
}
@Override
public ObjectMapper getContext(Class<?> type) {
System.out.println("--- getContext ---");
return defaultMapper;
}
}
使用后代关系,因此它将匹配.content p:nth-child(2)
元素内的所有第二个子元素(在所有级别)
.content
$("<p><strong>I AM NEW TEXT</strong></p>").insertAfter(".content > p:nth-child(2)");
答案 1 :(得分:2)
将其替换为子选择器:
include $fw_dir .'/bootstrap-helpers.php';
/**
* Load core
*/
{
require $fw_dir .'/core/Fw.php';
fw();
}