2011-10-21 20 views
2

私はすべての種類の似たような質問を読みましたが、私の特定の問題の答えは見つかりませんでした。私のサイトでは、ホバー上をズームする画像のリストと、画像のタイプを示す画像が表示されたサイドのdivがあります。マウスを離すと、divが消え、イメージは元の状態に戻ります。イメージを1つずつゆっくりと移動するとすべて正常に動作しますが、いくつかのイメージをかなり速くホバーすると、イメージがそれ以上ホバーされなくても、すべてのdivが表示され、表示されたままになります。ですから私の質問はこれです:イメージを速く動かしてもdivを消してもどうすればいいですか?画像がホバーされていない場合divを表示しない

$("ul.graphThumbs li").hover(function() { 
    $(this).find(".graphInfo").css({"z-index":"9999"}).hide().delay(300).fadeIn(700); 
},function(){ 
    $(".graphInfo").hide(); 
}); 

私はif ("ul.graphThumbs li")ようなものが必要が、その後(".graphInfo").hide()を推移していません。そのため、("ul.graphThumbs li")の一部が表示されている場合にのみ、(".graphInfo")を表示することができます。 私は十分に明確だったと思っています。

+0

オフの手私はあなたの皮のセレクタにそれほど曖昧されていないことをお勧めします。あなたがショーでやったのと同じように、hideに同じ 'find()'を使ってください。 –

答えて

1
$("ul.graphThumbs li").hover(function() { 
    $('.graphInfo').stop(true); 
    $(this).find(".graphInfo").css({"z-index":"9999"}).hide().delay(300).fadeIn(700); 
},function(){ 
    $(".graphInfo").hide(); 
}); 
+0

$( '。graphInfo')。stop(true);これは私の問題を解決し、 – misticx

2

簡単な例 http://jsfiddle.net/lastrose/ssHRd/

あなたはjqueryのに固執する、.stop()と別のアニメーションを開始する前にキューをクリアしたい場合などに使用するCSS

div.about{display:none;} 
img:hover + div.about{display:block;} 

$("ul.graphThumbs li").stop(true) 
関連する問題