2013-03-01 188 views
0

好吧,下面的代码工作正常,如果我在#nav div外单击。我问是否可以将鼠标从#nav div移开以使其消失。我不想'点击'来隐藏div。替代jquery鼠标事件

$(document).mouseup(function (e) 
{ 
    var container = $("#nav"); 

    if (container.has(e.target).length === 0) 
    { 
     container.hide(); 
    } 
}); 

任何帮助将不胜感激:)

+0

你需要有一个的mouseenter显示,然后你可以使用鼠标离开隐藏 – Pete 2013-03-01 14:16:56

+0

神奇的话'mouseenter'和'mouseleave'。他们已经有本地事件和jQuery方法。 http://api.jquery.com/mouseenter/ – jrajav 2013-03-01 14:16:57

+0

mouseenter和mouseleave不起作用:/ – 2013-03-01 14:20:00

回答

4

指定隐藏在mouseleave事件的元素的功能。

$("#nav").mouseleave(function(){ 
    $(this).hide(); 
}); 

小提琴:http://jsfiddle.net/howderek/SRMT8/

+0

请看看这个http://jsfiddle.net/sKpwV/ – 2013-03-01 14:28:45