mouseenter上的联合jquery
我有一个导航,它有一个下拉子菜单。当下拉菜单出现时,我希望菜单+下拉菜单的组合如下: 因此,如果鼠标以粉红色退出整个块,则子导航将消失。当前,如果鼠标仅退出下拉列表,则下拉列表将消失。 我看到了,但是把全班同学结合在一起对我来说不起作用mouseenter上的联合jquery,jquery,mouseenter,Jquery,Mouseenter,我有一个导航,它有一个下拉子菜单。当下拉菜单出现时,我希望菜单+下拉菜单的组合如下: 因此,如果鼠标以粉红色退出整个块,则子导航将消失。当前,如果鼠标仅退出下拉列表,则下拉列表将消失。 我看到了,但是把全班同学结合在一起对我来说不起作用 下面是为什么不从mouseenter和mouseleave的目标中删除子类呢?比如: 。。。as.myClass覆盖区域已经是菜单和下拉菜单的联合体(因为相应的元素包括链接和下拉菜单) 我在这里修复了另一个潜在的错误:mouseleave mouseenter
下面是为什么不从
mouseenter
和mouseleave
的目标中删除子类呢?比如:
。。。as.myClass
覆盖区域已经是菜单和下拉菜单的联合体(因为相应的元素包括链接和下拉菜单)
我在这里修复了另一个潜在的错误:mouseleave mouseenter事件的顺序可能太快,然后超时函数将启动,即使它不应该启动(因为光标停留在菜单区域)。为了防止出现这种情况,添加了一个附加变量(
animate
);它将超时存储在mouseleave
处理程序中,并在'mouseenter'处理程序中清除它。Erm。。。现在到底有什么不起作用?对我来说,当鼠标离开“item0”和“item1”区域时,它都有效。如果将鼠标放在项目0
上,则会出现下拉列表,然后将鼠标移到下拉列表上,然后返回到项目0
,下拉列表不应消失当我将mouseOut事件跟踪到控制台时,我看到的第一个问题是,当我将鼠标向上滚动列表并返回到item0时,to元素注册为body,而不是该列表项。强制列表项为块而不是使用实际的块元素(如div)可能有问题。@您是否建议我将标记从li
更改为div
?!=。我没有意识到。myClass
覆盖区域已经是菜单和下拉菜单的结合体
var animate;
$(".myClass").mouseenter(function () {
clearTimeout(animate);
$('.myClass').css('background-color','#777');
$('.mySubClass').css('display','inline');
});
$(".myClass").mouseleave(function() {
animate = setTimeout(function(){
$('.myClass .mySubClass').css('display','none');
$('.myClass').css('background-color','#49616a');
}, 800);
});