javascript - 如何根据光标移动*到*的元素更改 jQuery .mouseleave() 的行为?

标签 javascript jquery html css

大家好,我已经建立了一个简单的下拉菜单系统,它使用 hoverIntent 来显示子菜单并显示灯箱样式的“熄灯”深色背景。

我的菜单可以正常工作,但我想对其进行更新,这样当您从一个元素移动到下一个元素时,深色背景会保留在原来的位置,而不是消失并重新出现。

我创建了一个 jsFiddle,因此您可以看到我在说什么: http://jsfiddle.net/gGd6Y/10/

尝试将鼠标悬停在菜单项 1 上,然后移动到元素 2。

我希望能够在调用 HoverIntent 的 .mouseleave() 部分中看到鼠标光标移动到的元素,然后如果它是另一个菜单项,我会阻止关闭深色背景。

最佳答案

以当前设置 HTML 的方式无法完成。阴影覆盖了其他可悬停的元素。因此,当您mouseleave 时,您将悬停在阴影而不是其他 LI 上。

我提出的解决方案:http://jsfiddle.net/iambriansreed/k98LP/

我让菜单出现在阴影上方。我延迟了阴影淡出 Action ,并确保在实际淡出之前没有其他菜单项悬停。

关于javascript - 如何根据光标移动*到*的元素更改 jQuery .mouseleave() 的行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10268690/

相关文章:

javascript - 当选项更改并且我需要重新加载页面时,如何保持该选项处于选中状态?

javascript - 使用 json_encode() 和 JSON.parse 后地址数组输出错误

javascript - 首先触发事件...在 jQuery 中使用 $.data 的替代方案

Jquery图像叠加

javascript - Canvas 'drawImage' 返回 ' No function was found that matched the signature provided.'

javascript - Angularjs:从多个 Controller 捕获事件

jquery - 在 WordPress 中使用 '$' 而不是 'jQuery'

javascript - 在元素类更改时运行 jQuery 回调?

javascript - Safari 未通过接受编码 :gzip, 放气

javascript - 在 jquery mobile 中刷新页面