0

我有一个小的导航菜单,当它的悬停事件被调用时会打开。当我在菜单中选择一个项目时,其当前项目更改为所选项目并且菜单消失。到现在为止还挺好。现在我想要实现的是,当我不选择任何项目并且我只是将鼠标移动到其他地方时,菜单也会消失。我在 jsFiddle 上做了一个例子:见这里

我已经尝试过了blur(),首先它不起作用,其次我希望菜单在悬停消失时消失,而不是在有人点击其他地方后消失。谢谢。

4

2 回答 2

1

使用mouseout

$('.small-nav-left').live('mouseout', function() {
        $('.small-nav-menu-left').hide();
    });

小提琴

于 2012-08-06T13:59:20.503 回答
1

在这里,我重写了它以按照预期的方式工作......

.live()在 1.7 和 . 中已弃用。on()应该用来支持这一点。但是,.on() 中的回调不支持悬停,因此我们在链中使用 mouseover 和 mouseout 事件来复制与回调函数相同的想法。

此外,围绕元素移动并添加了一个跨度来处理我们的“文本”更新。

这是 jSfiddle。注意所有领域的变化:CSS、HTML 和 jQuery

于 2012-08-06T14:09:25.690 回答