这是我的设置:
<div id="nav">
<ul>
<li><a href="#">MENU ENTRY</a></li>
<li><a href="#">MENU ENTRY WITH SUBMENU</a>
<ul>
<li><a href="#">SUBMENU ENTRY</a></li>
<li><a href="#">SUBMENU ENTTY</a></li>
</ul>
</li>
</ul>
</div>
现在我尝试使用jQuery实现以下功能:
像这样:
$("#nav li").has("ul").find("a").append('<span class="test">SOMETHING</span>');
不幸的是,“span”-Tag附加到所有孩子“a”-Tags。
我试图从其他“a”-Tags中删除该类,但它不起作用。
$("#nav li ul li").find("a").remove(".test");
这是小提琴:http://jsfiddle.net/LmDYg/6/
帮助将不胜感激,谢谢!
答案 0 :(得分:0)
$('#nav li>ul').parent().children('a').append('<span class="test">SOMETHING</span>');
答案 1 :(得分:0)
这应该对你有用
$('#nav li ul').prev('a').append('<span class="test">SOMETHING</span>');
<强> Updated fiddle 强>
或者,您可以使用children()
代替find()
来仅选择<li>
的直接后代
答案 2 :(得分:0)
我相信你说的是你只想将它添加到a
li
的直接孩子,在这种情况下你会使用children
代替find
:
$("#nav li").has("ul").children("a").append('<span class="test">SOMETHING</span>');