我正在寻找一种方法来确定菜单中显示的最后一个锚点。 我试图用css赶上它,但没有用。在我的例子中,我试图将锚点写成“是”,女巫是列表中的最后一个,而不是“父母”的最后一个。
html:
<div class="container">
<ul>
<li><a href="#">no</a></li>
<li><a href="#">no</a></li>
<li>
<ul>
<li><a href="#">no</a></li>
<li><a href="#">no</a>
<ul>
<li><a href="#">no</a></li>
<li><a href="#">no</a>
<ul>
<li><a href="#">no</a></li>
<li><a href="#">yes</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<hr/>
<div class="container">
<ul>
<li><a href="#">no</a></li>
<li><a href="#">no</a></li>
<li>
<ul>
<li><a href="#">no</a></li>
<li><a href="#">no</a>
<ul>
<li><a href="#">no</a>
<ul>
<li><a href="#">no</a></li>
<li><a href="#">no</a></li>
</ul>
</li>
<li><a href="#">yes</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
jsfiddle:http://jsfiddle.net/u2BTz/2/
无论如何,我会接受jQuery解决方案,任何帮助以css 来确定范围都将受到赞赏。
答案 0 :(得分:2)
Diodeus的答案是正确的,但如果你想利用last(),你必须实施两步匹配操作:
$(".container").each(function() {
$(this).find("a").last().css("background-color", "red");
});
否则,无论容器如何,所有<a>
元素都将匹配,last()
将返回最后一个元素。
答案 1 :(得分:1)
忘记图层,只需直接选择锚标记即可。
$('.container a').last().css('background-color', 'red');