选择具有另一个元素作为直接子元素的元素

时间:2010-02-11 09:16:59

标签: jquery

我需要选择包含div作为直接孩子的所有object:has只检查任何类型的后代,所以现在我正在使用:

$('div > object').parent().css('text-align', 'center');

有更直接的方法吗?

2 个答案:

答案 0 :(得分:24)

您可以将代码简化为:

$('div:has(> object)').css('text-align', 'center');

答案 1 :(得分:8)

使用:has选择器:

$("div:has(> object)").css("text-align", "center");

以下是我写的一个例子:

$(function() {
  $("div:has(> h3)").css("background", "yellow");
});
div { padding: 15px; border: 1px solid black; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script>
<div>
  <h2>outer</h2>
  <div>
    <h3>inner</h3>
  </div>
</div>