我在这里有一个非常简单的菜单示例:
<ul id="1">
<li><a href="#">First</a></li>
<li><a href="#">Second</a>
<ul id="2">
<li><a href="#">Second - 1</a></li>
<li><a href="#">Second - 2</a></li>
<li><a href="#">Second - 3</a>
<ul id="3">
<li><a href="#">Aaa</a></li>
<li><a href="#">Bbb</a></li>
<li><a href="#">Ccc</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#">Third</a></li>
</ul>
我需要让<li>
有一个孩子<ul>
并且<ul>
的孩子是<li>
的孩子,并为其申请一种风格
我知道这听起来很复杂,但在上面的例子中,我想只得到<li>
说“第二 - 3”,这是一个ul里面的孩子,这是一个孩子的ul 。我不想获得任何其他<li>
。
如果没有得到“第二”的li,我就不能这样做,我不希望这样。
$("li > ul").addClass('whatever');
答案 0 :(得分:6)
使用$("li ul li:has(ul)")
e.g:
$(function(){
var items = $("li ul li:has(ul)");
alert(items.html());
});
答案 1 :(得分:1)
试试这个:
$("li > ul > li").each(function(){
if ( $(this).find("ul").length > 0){
$(this).css({"font-weight":"bold"});
}
});
答案 2 :(得分:1)
除非我弄错了,否则这很简单。尝试这样的事情:
$('#3').parent('li').addClass('whatever');
这将选择id为ul
元素的父节点(仅当它是li
元素时)