Ответ 1
Вы можете упростить код:
$('div:has(> object)').css('text-align', 'center');
Мне нужно выбрать все div
, которые содержат object
в качестве их прямого дочернего элемента. :has
просто проверяет наличие потомков любого типа, поэтому теперь я использую:
$('div > object').parent().css('text-align', 'center');
есть ли более прямой способ?
Вы можете упростить код:
$('div:has(> object)').css('text-align', 'center');
Используйте :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>