让我们来看看:
<div><p>this div contains a p tag</p></div> <div>this one is not</div>
如果div在上例中包含像p这样的特定标记,我如何为布尔值(true或false)赋值?
解决方法
$("div:has(p)").addClass("has-paragraph");
将为包含p个子节点的所有div添加一个类.如果段落不是直接的孩子,这将不会捡起来.
注意:这样做:
$("div p").addClass("has-paragraph");
将该类添加到段而不是div.您可以通过这样做来解决这个问题:
$("div p").parents("div").addClass("has-paragraph");
但这会抓住多个div的祖先.你可以这样做:
$("div p").parents("div:first").addClass("has-paragraph");
解决这个问题.
或者更多编程:
$("div").each(function() { if ($(this).find("p").length > 0) { // do stuff } });