搜索

首页  >  问答  >  正文

javascript - 对ul绑定mouseout,但同时li也会触发mouseout事件?

我的思路是这样的:
li之间mouseover,二级菜单p不变,变的只是内容,但我想鼠标移出一级菜单的ul时,二级菜单隐藏。
我现在对一级ul绑定了mouseout,但这样在li之间也会触发了mouseout事件(冒泡到了ul)。有没办法不让li之间触发mouseout事件呢。

阿神阿神2896 天前309

全部回复(5)我来回复

  • 巴扎黑

    巴扎黑2017-04-10 15:22:48

    可以判断event对象中的target属性的nodeName是否为UL或者是其他逻辑判断,再做相应处理

    回复
    0
  • 大家讲道理

    大家讲道理2017-04-10 15:22:48

    利用锚链接或者:target伪类就能实现,然后控制一下二级菜单的显示和隐藏就行。

    利用锚链接实现的demo:demo

    利用:target伪类的实现原理:Trick:CSS3的:target实现选项卡切换

    回复
    0
  • 阿神

    阿神2017-04-10 15:22:48

    ul绑定mousewheel事件!

    回复
    0
  • PHPz

    PHPz2017-04-10 15:22:48

    事件肯定是要被触发的,你能做的就是不绑定事件处理函数到li上

    回复
    0
  • 黄舟

    黄舟2017-04-10 15:22:48

    $('#dom').on('mouseleave', function () {
        $('#dom').hide();
    });

    回复
    0
  • 取消回复