2011-11-09 79 views
1

結合click()和mouseout()的最佳方式是什麼?基本上,我想要一個列表項來顯示某個鏈接是否被點擊,並且一旦鼠標移出鏈接的父div,我想讓列表消失。點擊事件是否可以與mouseout結合使用?

$(document).ready(function() { 
    $('.content_inner').hide(); 
    $('.clickme').click(function() { 
     $('.content_inner').fadeIn(); 
    });//mouseout 

}); 
<div class=".container"> 
    <a href="#" class="clickme">Click me!</a> 
    <ul class="content_inner"> 
     <li><a href="#">testing</a></li> 
     <li><a href="#">testing</a></li> 
    </ul> 
</div> 

回答

7

當然,所有你需要做的就是附加一個 「OnMouseLeave在」事件監聽器的容器div,以便當鼠標移開時,它將檢查是否已經顯示div​​3210,如果是,則隱藏它。

$(document).ready(function() { 
    $('.content_inner').hide(); 
    $('.clickme').click(function() { 
     $('.content_inner').fadeIn(); 
    }); 
    $('.container').mouseleave(function() { 
     if ($('.content_inner').is(':visible')) { 
      $('.content_inner').fadeOut(); 
     } 
    }); 
}); 
+1

你能否簡單介紹一下這段代碼?我理解得很好,但其他人可能不會。 +1使用:可見 - 我會使用一個類。 – Bojangles

+0

是的好點。我希望我的解釋就足夠了。如果沒有,請隨時編輯它。 –

+1

完美的作品! – gables20

-1
$('.clickme').bind('click mouseout',function() { 
    $('.content_inner').fadeIn(); 
}); 

而且你去^ _^

雖然你可能想從<div class=".container">此行固定到<div class="container">

+4

你只看過標題嗎? –

相關問題