ie7 mouseleave时如何不隐藏子菜单?
导航菜单包括子菜单,当鼠标移入需要显示子菜单,鼠标移出则隐藏子菜单,但是在ie7下只要鼠标移出父级div时子菜单就消失了,鼠标永远无法移入到子菜单。
HTML如下
<div class="parentdiv">
<span>父菜单1</span>
<div class="submenu">
<ul>
<a href=""><li>子菜单1</li></a>
<a href=""><li>子菜单2</li></a>
<a href=""><li>子菜单3</li></a>
</ul>
</div>
</div>
<div class="parentdiv">
<span>父菜单2</span>
<div class="submenu">
<ul>
<a href=""><li>子菜单1</li></a>
<a href=""><li>子菜单2</li></a>
<a href=""><li>子菜单3</li></a>
</ul>
</div>
</div>
jQuery如下
$('.parentdiv').mouseenter(function(){
$(this).children('.submenu').show();
}).mouseleave(function(event){
$(this).children('.submenu').hide();
});
这样写在ie8 chrome下都可以正常显示,ie7不行,请问要如何解决?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我在ie7下面测试也是可以的啊。
但对于你说的“只要鼠标移出父级div时子菜单就消失了,鼠标永远无法移入到子菜单。”这个问题,可以用
setTimeout
函数,延迟子菜单hide,然后在mouseenter
事件里clearTimeout
有可能是因为定位的问题,你是否用了绝对定位,IE7有bug