我有一个像这样的html代码:
<ul>
<li class="curent"><a href="home.html">Home</a></li>
<li>
<a href="javascript:void(0)">Products</a>
<ul class="sub">
<li><a href="samsung.html">Samsung</a></li>
<li><a href="lenovo.html">Lenovo</a></li>
</ul>
</li>
<li><a href="catalog_grid.html">News</a></li>
</ul>
http://img38.imageshack.us/img38/5795/70a.png
我想单击任何 a 标签,并且 li 标签父级突出显示。我尝试了这段代码,但它不适用于 ul has sub class 中的标签:
var this_url = window.location.href;
$('#block_nav_primary ul li').each(function() {
if ($(this).children().attr('href') == this_url) {
$('#block_nav_primary ul').find('li[class="curent"]').removeClass('curent');
$(this).addClass('curent');
}
});
有人能指出我正确的方向吗?
感谢您的帮助!
P/S:看起来像这个线程Highlight Parent Link in Navigation Menu With Jquery
最佳答案
我不确定我是否完全理解您的措辞,但您想对所有 LI 标记应用相同的效果,包括子列表中的标记?
替换这个:
$('#block_nav_primary ul li').each(function() {
这样:
$('#block_nav_primary ul').find('li').each(function() {
关于javascript - jQuery - 单击子元素但突出显示父元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17465266/