jquery:如果鼠标事件发生在另一个 div 上,则防止 div 隐藏

标签 jquery css

我这里有这个简单的例子: http://jsfiddle.net/pTyvc/1/ 我不希望 sub_menu div 在鼠标悬停时向上滑动有什么帮助吗?谢谢

最佳答案

您必须使用 mouseover,因为当您从子元素移动到父元素时,不会触发 mouseenter

此外,当您将鼠标悬停在子菜单上时,您必须.stop() 动画以防止它向上滑动。这同样适用于将鼠标从子菜单移动到父元素。

http://jsfiddle.net/pTyvc/25/

$(".menu_item").mouseover(function(){
    $(this).addClass("selected")
        .children().stop().slideDown(500);
});

$(".menu_item").mouseout(function(e){
    $(this).removeClass("selected")
        .children(".sub_menu").slideUp(500);
});

$(".sub_menu").mouseover(function() {
    $(this).stop();
});

关于jquery:如果鼠标事件发生在另一个 div 上,则防止 div 隐藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9294908/

相关文章:

javascript - 如何在 React Highcharts 中获取网格位置

html - 禁用移动设备的内容

jquery - 如何在 jquery 中设置 5 分钟后过期的 cookie?

html - CSS 背景图片被截断

html - 为什么在页脚之前有一个 "clear"类?

jquery - 下拉菜单多次重复其动画

jquery - onmouseover 与动画 Canvas 的完整性

javascript - 如何设置计时器以防止重叠的 ajax 调用?

jquery - 使用带有自定义触发按钮的 jQuery 日期选择器

javascript - div 内的粘性元素在滚动上具有绝对位置