Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 垂直CSS/jQuery下拉菜单问题?_Javascript_Jquery_Css_Drop Down Menu - Fatal编程技术网

Javascript 垂直CSS/jQuery下拉菜单问题?

Javascript 垂直CSS/jQuery下拉菜单问题?,javascript,jquery,css,drop-down-menu,Javascript,Jquery,Css,Drop Down Menu,在我的web应用程序中,我有一个垂直CSS菜单来显示它。我的代码按预期工作,但有一个问题,当我将鼠标移到所有a.menutoggle元素上时,最后一个下拉列表保持打开状态 我一点也不知道如何隐藏它?请帮忙 $('.menutoggle').mouseover(函数(事件){ $('.menucontainer').hide(); $(this.next('.menucontainer').toggle(); }); $('#menutoggle').mouseout(函数(){ $('.men

在我的web应用程序中,我有一个垂直CSS菜单来显示它。我的代码按预期工作,但有一个问题,当我将鼠标移到所有
a.menutoggle
元素上时,最后一个下拉列表保持打开状态

我一点也不知道如何隐藏它?请帮忙

$('.menutoggle').mouseover(函数(事件){
$('.menucontainer').hide();
$(this.next('.menucontainer').toggle();
});
$('#menutoggle').mouseout(函数(){
$('.menucontainer').hide();
});
#menuwrap{
填充:50px;
}
menutoggle先生{
显示:块;
z指数:99;
边框:1px纯红;
}
梅努康塔纳先生{
显示:无;
位置:绝对位置;
左:150px;
顶部:50px;
z指数:999;
边框:1px纯蓝色;
背景:#999;
}


主要问题是因为
鼠标出
事件上的
菜单切换
选择器需要使用类选择器,而不是id。请将其更改为
.menutogle

然而,由于使用了
mouseout
,当鼠标在元素之间移动时,菜单会快速闪烁,这会引发另一个问题。要解决此问题,您可以修改逻辑,单独使用CSS来显示/隐藏子菜单,如下所示:

#menuwrap{
填充:50px;
}
menutoggle先生{
显示:块;
z指数:99;
边框:1px纯红;
}
梅努康塔纳先生{
显示:无;
}
.menutoggle:悬停+.menucontainer,
.menutoggle+.menucontainer:悬停{
显示:块;
位置:绝对位置;
左:150px;
顶部:50px;
z指数:999;
边框:1px纯蓝色;
背景:#999;
}


这就是问题所在,它已经发布了应用程序,senior要求不要更改任何内容。我在知情的情况下评论了
'.menutoggle'hide mouseout
事件,因为我尝试了这一点,当我启用它时,它不会消失,相反,在链接上悬停的行为会有所不同,并且为一个元素打开的下拉菜单不会保留。您可以启用它并检查其行为,因为它的行为是错误的。我在下面为您添加了一个答案,因为我注意到修复您的打字错误会在逻辑中引发另一个问题。谢谢,通过修改我的代码来检查它。