2013-09-27 158 views
0

在网站http://va.in-design.com当我将鼠标悬停在菜单上时,一切正常。但是,当我尝试访问子菜单链接和子菜单时,菜单关闭。我认为这可能与透明背景有关。如果有什么办法不让它关闭。JQuery下拉菜单鼠标悬停。菜单关闭

感谢, 驯ž

+0

你可以在jsFiddle上添加你的js,css和html吗? –

+0

我试着将部件添加到JSFiddle,但无法启动它。不知道我要做什么。我会再试一次,让我知道我什么时候做。谢谢, –

+0

我加了。请查看: http://jsfiddle.net/tziady/XFqAd/ 它在JSFiddle上完美运行。我的假设是,其他一些层正在搞乱它。我有一些mouseenter事件也不适用于文本标签。不知道它是html还是body cs代码。试图删除它,看看会发生什么。 –

回答

0

它看起来像子菜单不是菜单的孩子。因此,当您悬停在子菜单上时,您不再徘徊在菜单上,而是关闭。您可以重构代码,以便该子菜单是顶级菜单项的子项。

+0

好的,我对CSS非常陌生。我会通过代码来看看你的意思?你能给我一个关于如何使它成为顶级菜单的孩子的指针吗?有一种简单的方法,还是我必须重新配置分配?感谢指针。将我的想法发回。 –

+0

你能给我一点关于如何实际做到这一点的线索。这是在CSS还是HTML。对不起;但我不确定孩子的继承是如何得到或没有获得的。 –

+0

对不起,仔细观察一下,我觉得其他的东西在那里。不知道是什么,现在 - 我会试着看看几分钟。 – andi

0

它看起来像你在LI上绑定鼠标事件,它应该包括所有的孩子,但不要。你试图改变你的结构:

<DIV align="center"> 
<ul id="sdt_menu" class="sdt_menu"> 
<DIV class="someclass"> 
<LI> 

...然后绑定鼠标事件(“#someclass”),而不是“#sdt_menu>里”?

当您将鼠标事件绑定到LI时,它显然不会附加到子DIV,但会附加到子A元素。


另一个可能的答案是to use .hover instead of .mouseenter and .mouseleave

.hover() jQuery函数有两个参数,在hover(的mouseenter)要被执行的功能,并在hover out(鼠标离开)时要执行的功能。你应该使用它而不是mouseleave