我是jquery的新手并通过官方文档学习。在阅读时,我有类似这样的HTML代码...
<ul class="level-2">
<li class="item-a">A</li>
<li class="item-b">B
<ul class="level-3">
<li class="item-1">1</li>
<li class="item-2">2</li>
</ul>
</li>
<li class="item-c">C</li>
</ul>
我想设置backgroundColor / border是“ul.level-2”的直接子项...除了嵌套“ul”的孩子...我通过...成功获得了它...
$("ul.level-2").children("li").each(function(){
var theChild = $(this).children("ul").length;
if(!theChild){
$(this).css("backgroundColor", "red");
};
});
现在我的问题是jquery用于编写短代码...如何使用jquery selector / filter来缩短此代码...提前感谢...
答案 0 :(得分:3)
试试这个
$("ul.level-2 > li:not(:has(ul))").each(function(){
$(this).css("backgroundColor", "red");
})
和最短的
$("ul.level-2 > li:not(:has(ul))").css("backgroundColor", "red");