2013-03-01 184 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