2014-01-07 41 views
1

我有一个菜单,显示您何时将鼠标悬停在标题中的“菜单”链接上。现在下拉菜单通过CSS显示/隐藏。我想保持悬停功能,但也添加了jQuery功能,如果您单击“菜单”一词,它将切换菜单并保持打开状态,即使您将鼠标移开。jQuery下拉菜单 - 悬停并单击

我可以做一个或另一个,但还没有想出是否有可能将两者结合起来。

下面是我对点击/切换的JavaScript:

$("#menu-drop-arrow").click(function(){ 
    var a=300; 
    $("#menu").slideToggle(a); 
    $("#hide_menu").click(function(){ 
     $("#menu").slideUp(a) 
    }) 
}); 

有谁知道这是否可能有菜单显示和悬停隐藏它,但如果你点击链接它会保持菜单打开,直到你再次点击链接?

谢谢!

编辑* ** * ** * ** * ** * ** * ** * ** * ** *

下面是菜单代码的示例,如果它有帮助:

<div id="menu-drop"> 
<div id="menu-drop-arrow"><span id="menu-text">Menu</span> 
<div class="show_col"> 
<div class="menucat"> 
<ul class="menuitem"> 
    *** menu links here ** 
</ul> 
</div> 

<div class="menucat"> 
<ul class="menuitem"> 
    *** menu links here *** 
</ul> 
</div> 
</div> 
</div> 
</div> 

回答

0

你需要的代码记住菜单是哪种模式,我们称之为模式,例如,“悬停”和“留”

当单击菜单,模式将被切换。此外,您必须根据模式更改您的悬停事件。 (即,如果模式为“悬停”,则进行正常显示/隐藏;如果模式为“停留”,则不执行任何操作)

+0

请仔细阅读以下示例或代码片段?就目前而言,这不是一个很好的答案,并且对于那些在未来偶然发现这篇文章的人们来说没有什么帮助。 –

+0

我认为可能是这样。不幸的是,这超出了我的能力与JavaScript – user3019063

+0

Dryden,原来的问题并没有包括任何HTML标记,甚至是如何设置悬停的代码。我可以旋转我的轮子,从头开始写一个完整的例子,但是我们不能假设(并且这不是轻微的),OP可以分析我的例子并实际使用它。所以这个问题问,是否有可能。是的,这是可能的。但实施会有所不同 - 没有魔力。 –