【发布时间】:2012-08-18 05:53:40
【问题描述】:
tt我有这样的导航:
<ul>
<li><a href='#'>Menu title 1</a>
<ul>
<li><a href='#'>Submenu title 1</a></li>
<li><a href='#'>Submenu title 2</a></li>
<li><a href='#'>Submenu title 3</a></li>
</ul>
</li>
<li><a href='#'>Menu title 2</a>
<ul>
<li><a href='#'>Submenu title 1</a></li>
<li><a href='#'>Submenu title 2</a></li>
<li><a href='#'>Submenu title 3</a></li>
</ul>
</li>
...
然后使用 jquery,我将悬停菜单项的 z-index 设置为与子菜单一样高,并淡入子菜单元素。因此,悬停的菜单项元素在子菜单上可见,所有其他菜单项都在子菜单下。
现在我需要为子菜单设置鼠标事件 - mouseleave => 隐藏子菜单。 问题:由于菜单项现在位于子菜单上 - 如果鼠标停留在子菜单上但悬停在菜单项 1 上,jquery 将其理解为子菜单的 mouseleave
这对我来说是很常见的问题,我总是使用某种“秘籍”,但我认为必须有一个简单的解决方案。
我不提供完整的源代码,但我不要求你提供工作代码,我只是需要一些想法。希望得到帮助,谢谢。
【问题讨论】:
-
你的 Javascript 代码在哪里?
-
会有帮助吗?这是我对这个常见问题的解决方案:stackoverflow.com/questions/12024666/…
-
dystroy,谢谢,但这是我称之为“秘籍”的东西,我正在寻找一些简单的解决方案。其他人:js 很简单——mouseenter——显示子菜单,mouseleave——隐藏子菜单。其他一切都是关于设置和取消可视化类。
标签: jquery z-index mouseout mouseleave