【发布时间】:2017-12-09 06:15:14
【问题描述】:
在我的代码中,当我尝试悬停主菜单时,子菜单应该打开,我也可以单击子菜单的其他链接。我已经完成了几乎所有操作,但当我尝试悬停子菜单时除外不显示。
我将鼠标悬停在菜单上,我可以看到子菜单,但是当我尝试进入子菜单时它消失了
$(document).ready(function(){
$(".accounts").mouseenter(function() {
$(".underdrop").slideDown();
});
$(".accounts").mouseleave(function() {
$(".underdrop").slideUp();
});
});
.accounts{
display: inline-block;
position: relative;
}
.underdrop{
width: 150px;
position: absolute;
background-color: #fff;
margin-top: 20px;
margin-left:250px;
border: 1px solid #d7d7d7;
padding-left: 0px;
height:230px;
z-index: 999999;
-webkit-box-shadow: 0px 1px 9px 0px rgba(0,0,0,0.75);
-moz-box-shadow: 0px 1px 9px 0px rgba(0,0,0,0.75);
box-shadow: 0px 1px 9px 0px rgba(0,0,0,0.75);
display:none;
}
.underdrop::before{
content: '';
position: absolute;
border: 15px solid #4b968a;
border-bottom-color: transparent;
border-right-color: transparent;
margin-left: 55px;
transform: rotate(45deg );
margin-top: -15.5px;
z-index: 9999
}
【问题讨论】:
-
我在移动设备上,现在无法真正测试它。但我想原因是 mouseleave 功能。在这种情况下,您可能需要检查鼠标是否离开子菜单而不关闭主菜单。也可以考虑仅在悬停页面的其余部分时才关闭菜单。但这可能对性能不利。
标签: javascript jquery html css menu