Jquery 如果下拉列表可见,则将类添加到父li
我有一个非常标准的基于CSS的下拉菜单。主列表是mainNav,下拉列表只是mainNav ul。mainNav ul最初的显示为none,当您将鼠标悬停在其父li上时,其显示设置为block。当嵌套的ul可见时,我想添加hilite类,这与a:hover属性相同。因此,当下拉列表可见时,父li将高亮显示 当嵌套的ul可见时,以li为目标:Jquery 如果下拉列表可见,则将类添加到父li,jquery,Jquery,我有一个非常标准的基于CSS的下拉菜单。主列表是mainNav,下拉列表只是mainNav ul。mainNav ul最初的显示为none,当您将鼠标悬停在其父li上时,其显示设置为block。当嵌套的ul可见时,我想添加hilite类,这与a:hover属性相同。因此,当下拉列表可见时,父li将高亮显示 当嵌套的ul可见时,以li为目标: $(function(){ if($('#mainNav ul').css({display: "block"})){ $("#ma
$(function(){
if($('#mainNav ul').css({display: "block"})){
$("#mainNav li:nth-child(3)").addClass("hilite");
}
});
html
<ul id="mainNav" class="clearfix">
<li><a href="contact.php" target="_self">CONTACT</a></li>
<li><a href="events.php" target="_self">EVENTS</a></li>
<li><a href="current-line.php" target="_self">CURRENT LINE</a>
<ul>
<li><a href="#" target="_self">2009 Fall</a></li>
<li><a href="#" target="_self">2009 Spring</a></li>
<li><a href="#" target="_self">2008 Fall</a></li>
<li><a href="#" target="_self">2008 Spring</a></li>
</ul>
</li>
<li><a href="shop.php" target="_self">SHOP</a></li>
<li><a href="press.php" target="_self">PRESS</a></li>
<li><a href="bio.php" target="_self">BIO</a></li>
<li><a href="index.php" target="_self">HOME</a></li>
</ul>
尝试以下几点:
$("#mainNav ul li ul").hover(
function(){ // Mouse Over
$(this).parent().addClass("hilite");
},
function(){ // Mouse Out
$(this).parent().removeClass("hilite");
}
);
尝试以下几点:
$("#mainNav ul li ul").hover(
function(){ // Mouse Over
$(this).parent().addClass("hilite");
},
function(){ // Mouse Out
$(this).parent().removeClass("hilite");
}
);
我将上面的内容修改为这个mainNav ul,以简单地针对嵌套的ul,然后将css更改为这个ulmainNav li.hilite>a,因为我只能针对父li,而不是li中的“a”,并且它可以工作。我应该用一种更干净的方法还是另一种方法来做这件事呢?我已经尝试了几种不同的方法,而且似乎总是回到这一步。如果你发现了什么让我知道,我总是想学习新的方法。我修改了上面的这个mainNav ul来简单地针对嵌套的ul,然后将css改为这个ulmainNav li.hilite>a,因为我只能针对父li,而不是li中的“a”,并且它可以工作。我应该用一种更干净的方法还是另一种方法来做这件事呢?我已经尝试了几种不同的方法,而且似乎总是回到这一步。如果你发现了什么让我知道,我总是想学习新的方法。