从菜单中获取父标签

时间:2011-11-15 13:32:53

标签: jquery css drop-down-menu

我有一个下拉菜单,问题是在主菜单上是当鼠标离开主菜单时,下拉菜单中,父元素上的悬停效果消失。

我尝试过这样的事情:

$("nav#main-nav ul li #submenu").hover(
  function () {
    //alert($(this).closest(["li", "a"]));
    $(this).closest(["li", "a"]).css('border-bottom', '8px solid #000');
  }
);

然而,这不起作用:( 菜单如下所示:

<nav id="main-nav">
  <ul>
    <li>
      <span><a href="#" class="blue">Social & Sundhed</a></span>
    </li>
    <li>
      <span><a href="#" class="orange">Pædagogisk</a></span>
    </li>
    <li>
      <span><a href="#" class="green">Kost & Service</a></span>
    </li>
    <li>
      <span><a href="#" class="yellow">Teknik-Service</a></span>
      <ul id="submenu">
        <div class="inner">
          <div class="border-top"></div>
          <div class="submenu-left">
            <li><a href="#">Beredsskabspersonale i basis og mesterstillinger</a></li>
            <li><a href="#">Regionsbetjente Skolebetjente, Ejensomsserviceassister m.fl (DR)</a></li>
            <li><a href="#">Driftsledere HUR/Arriva (Danske regioner)</a></li>
            <li><a href="#">Miljøkontrollører ved Miljokontrollen (KBH)</a></li>
          </div>
          <div class="submenu-right">
            <li><a href="#">Beredsskabspersonale i basis og mesterstillinger</a></li>
            <li><a href="#">Regionsbetjente Skolebetjente, Ejensomsserviceassister m.fl (DR)</a></li>
            <li><a href="#">Driftsledere HUR/Arriva (Danske regioner)</a></li>
            <li><a href="#">Miljøkontrollører ved Miljokontrollen (KBH)</a></li>
          </div>
          <div class="clearfix"></div>
          <div class="border-bottom"></div>
        </div>
        <div class="clearfix"></div>
      </ul>
      <div class="clearfix"></div>
    </li>
  </ul>
</nav>

2 个答案:

答案 0 :(得分:1)

当您使用第二个时,是否将鼠标悬停在LI A:hoverLI:hover a cus上,您可以将所有子菜单悬停在所需的子菜单上,但A的:hover将保持活动状态。这可以通过css完成。

#main-nav li:hover a
{
    // Hover of the A
}

答案 1 :(得分:1)

尝试使用jQuery.parent吗?

$("nav#main-nav ul li #submenu").hover(
    function () {
        $(this).parent().css('border-bottom', '8px solid #000');
    }
);