我需要在下面的菜单中添加一个班级悬停到标签上的菜单。有什么想法吗?
<ul id="nav">
...
<li><a href="">Home</a></li>
<li><a href="">Another</a>
<ul>
<li><a href="">Sub</a></li>
$("#nav li ul li a").hover(
function() {
$(this).parent().parent().parent().addClass('current');
},
function() {
$(this).parent().parent().parent().removeClass('current');
//alert();
}
);
答案 0 :(得分:3)
$("#nav a").hover(
function() { $(this).closest("a").addClass("current"); },
function() { $(this).closest("a").removeClass("current"); }
);
答案 1 :(得分:1)
您可以通过使用css伪类在没有jQuery的情况下实现此目的。 html中的所有元素都获得了一个伪类:当鼠标悬停在它们之上时悬停。
在CSS中选择它们:
#nav li ul li:hover {
// Your style here.
}
答案 2 :(得分:0)
这个方法是你需要的http://api.jquery.com/closest/上帝保佑jQuery
答案 3 :(得分:0)
可能会更快做到这一点
$(document).ready(function() {
$('#nav a:hover').parents('div > ul > li:hover > a').addClass('current');
});