2012-03-02 5 views
0

jQueryが新しく、テキスト付きの単純なサムネイルfadeIn/fadeOutアニメーションを作成しようとしています。コードはシンプルですが、複数回ホバーすると速く応答を停止します。 .show().hide()の追加についてjQueryフェードイン/アウトクラッシュ

(function(){ 
    $('.boxcaption').css({'display': 'none'}) 
    $('.boxgrid.captionfull').hover(function(){ 
     $(".cover", this).stop().fadeIn(160); 
    }, function() { 
     $(".cover", this).stop().fadeOut(160); 
    }); 
})(); 
+0

FYI欠落があります ';' css()呼び出しの後の文字。 – papaiatis

答えて

0

)。 true, trueとなります。

jQueryドキュメントでこれを非常によく説明しています。 .stop() documentation

私はこれを実証しました。

HoverFiddle

幸運!

0

どのように?

(function(){ 
    $('.boxcaption').css({'display': 'none'}) 
    $('.boxgrid.captionfull').hover(function(){ 
     $(".cover", this).stop().hide().fadeIn(160); 
    }, function() { 
     $(".cover", this).stop().show().fadeOut(160); 
    }); 
})(); 

か前にも不透明プロパティをリセットすることができます。問題は、あなたが(停止用のパラメータを使用していないです

(function(){ 
    $('.boxcaption').css({'display': 'none'}) 
    $('.boxgrid.captionfull').hover(function(){ 
     $(".cover", this).stop().css("opacity","1").fadeIn(160); 
    }, function() { 
     $(".cover", this).stop().css("opacity","0").fadeOut(160); 
    }); 
})(); 
+0

あなたのために働く場合は、大きな緑のチェック看板をクリックして解決策として私の答えを受け入れることを忘れないでください!どうも。 – papaiatis

0

オブジェクトをキャッシュしようとすると、$( "。cover"、this) - これはjqueryがマウスをホバーするとこの要素を検索し始めます。このセレクタの背後には多くのコーディングがあります。また

最初のホバー機能から().stop削除しよう

(function(){ 
    //save selectors in variables 
    var l1 = $('some_selector'), l2= $('some_selector2'); 

    $('.boxcaption').css({'display': 'none'}) 
     l1.hover(function(){ 
     $(".cover", this).fadeIn(160); 
    }, function() { 
     l2.stop().fadeOut(160); 
    }); 
})(); 
+0

これは助けになるかもしれませんが、少なくともあなたはいくつかの改善があります – Liviu

+0

アニメーションが仕事をしてくれたけれども感謝の前に、 – Teddy

関連する問題