下拉菜单的js 在鼠标移到子元素时触发mouseout?

在rightheader的下拉菜单,鼠标移到从一级菜单移开移向下面的内容时下面的内容就会消失
代码:http://runjs.cn/detail/6ed7t8hv

阅读 4.2k
4 个回答

大致看了一下 应该是mouseout事件的问题。

<div1>大一点
    <div2>小一点
    
    </div2>
<div1/>

从div1挪到div2上时,是会触发div1的mouseout事件的。建议改为mouseleave
//////////////////
问题出在你的

<li>
    <a></a>
    <ul></ul>
</li>

三层结构上。没问题的那个a和li大小相同,不会触发mouseout。
有问题的那个a明显比li小一圈。从li上进入a就会触发mouseout,你看看会发现,能使ul出现的鼠标位置,只有li的外侧那一点点。因为中间是a,出发mouseout了。

代码看不到。。能贴出来或者用JSFiddle么?
虽然看不到,但是估计是事件冒泡的问题

事件冒泡机制问题,用event.stopPropagation()和event.preventDefault()。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题