我一直在jQuery插件的帮助下创建一个多级菜单。但是,我有一个奇怪的鼠标问题。
第1期
如果你将鼠标移到“解决方案”上,然后将鼠标向上移出项目并重新打开,则会移除其类(灰色背景),这很好,但现在你的鼠标仍在菜单项上,现在背景已经走了,所以你必须再次踩下鼠标,玩耍,你会看到。这有意义吗??
一如既往 - 我已经看了很长时间了,因为我看不出这个问题而且它正在慢慢让我疯狂!
第2期
鼠标悬停事件附加到<A>
标记,这也会导致出现问题,在<LI>
上提供有关如何实现此问题的提示会更有意义。
我在下面创建了一个小提琴,请随时给我一些关于如何解决这个问题的见解。谢谢!
答案 0 :(得分:0)
我认为当光标离开时,没有正确处理鼠标输出以重置菜单项。它应该重置为关闭状态。我建议使用jQuery的悬停(over,out)方法。
我(非常)简要地检查了一下,通过更改init()操作中的第一条规则($menuItems.on('mouseover', open);
)$menuItems.hover(open, close);
似乎解决了这个问题:
答案 1 :(得分:0)
在您的代码中,您在打开函数中有以下逻辑语句:
if (current === idx) {
$item.removeClass('cbp-hropen');
current = -1;
} else {
我相信这是您遇到的问题的原因。 尝试删除该代码,看看它是否有帮助。