2011-11-09 8 views
1

click()とmouseout()を組み合わせる最良の方法は何ですか?基本的には、特定のリンクがクリックされた場合にリスト項目を表示し、リンクの親divからマウスが離れると、リストをディサッパーにします。clickイベントを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

確かに<div class=".container">から、この行を修正したいかもしれませんが

は、あなたがする必要があるすべては、添付 "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のための使用:visible - 私はクラスを使用していただろう。 – Bojangles

+0

良い点。私の説明が十分であることを願っています。そうでない場合は、編集してください。 –

+1

は完全に機能します! – gables20

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

そしてそこに行く^ _ ^あなたが<div class="container">

+4

タイトルのみを読み取っていますか? –

関連する問題