如何将事件绑定到隐藏菜单

时间:2012-04-05 02:03:51

标签: jquery

我创建了一个小插件,可在单击div时显示下拉菜单。

以下是让它工作的代码

$('#clickable_div').click(function() {
    $('#nav_menu').showMenu({
        parent:'#clickable_div' 
    });                
});

使用插件Jsfiddle:http://jsfiddle.net/HtNK3/

所以现在基本上我想添加一个功能,我需要在用户点击任何地方时隐藏下拉列表div 在文档中但不在打开的下拉列表中

如何实现这一目标?

2 个答案:

答案 0 :(得分:2)

我正在使用这样的东西:

//Close popup menus by clicking anywhere
$("body").mouseup(function(event){
        if (!$(event.target).hasClass("YOUR_CLASS_HERE")) {
        $("#nav_menu").hide();
    } 
});

答案 1 :(得分:0)

当鼠标离开下拉列表(mouseleave事件)然后隐藏div时,我会使用setTimout。很常见也很容易。

越野车,但基本的例子: http://jsfiddle.net/HtNK3/5/