2017-05-29 11 views
-1

このjQueryコードは、特定の画像にフェードアウトし、その画像をフェードアウトし、別のフェードアウトを絶対位置にします。jQuery fadeIn()fadeOut()はshow()とhide()のように動作します

問題は、機能がフェードしていないことです。代わりに、画像を表示したり隠しているだけです。

HTMLコード

<div class="row"> 
    <div class="col"> 
    <img class="image-without-color"> 
    <img class="image-with-color"> 
    </div> 
    <div class="col"> 
    <img class="image-without-color"> 
    <img class="image-with-color"> 
    </div> 
</div> 

のjQueryコード:

$('.partner-logo-container').hover(
    function(){ 
    $(".image-without-color", this).fadeOut(250);  
    $(".image-with-color", this).fadeIn(250); 
    }, 
    function(){ 
    $(".image-with-color", this).fadeOut(250); 
    $(".image-without-color", this).fadeIn(250); 
    } 
); 

ありがとうございます!

+0

あなたがそのようなフィドルか何かを作ることができるので、我々は間違って何が起こっているのかを把握することができますか? – Curiousdev

+0

'.fadeOut'と' .fadeIn'はうまく連携しません。 2つ目の要素に '.hide'をつけて一つの要素に' .fadeIn'を使ってみてください。 –

+0

スクリプトで問題のデモンストレーションに関連するHTMLをコードスニペットに追加できますか? – Nope

答えて

0
$(".partner-logo-container").hover(function(){ 
     $(".image-without-color").fadeOut(3000, function(){ 
      $(".image-with-color").fadeIn(3000) 
     }); 
    }); 
+0

これは 'fadeIn' /' fadeOut'ではなく、 'show'要素を'隠す 'でしょうか? – Sandman

+0

"show"の代わりに "hide"と "fadeIn"の代わりに "fadeOut"ちょうど –

+1

このコードは質問に答えるかもしれませんが、どのようにして問題が解決されるのか、値。 – Badacadabra

1

Hmm。私はフィドルを作成する自由を取った。

HTML

<div class="row"> 
    <div class="col"> 
    <div class="partner-logo-container"> 


    <img class="image-without-color image" src="https://image.flaticon.com/icons/svg/417/417715.svg" style="width: 200px"> 
    <img class="image-with-color image" src="https://image.flaticon.com/icons/png/512/417/417746.png" style="width: 200px"> 
    </div> 
    </div> 
    <div class="col"> 
    <img class="image-without-color"> 
    <img class="image-with-color"> 
    </div> 
</div> 

はJavaScript

$('.partner-logo-container').hover(function(){ 
    $(".image-without-color", this).fadeOut(250);  
    $(".image-with-color", this).fadeIn(250); 
    }, function(){ 
    $(".image-with-color", this).fadeOut(250); 
    $(".image-without-color", this).fadeIn(250); 
    } 
); 

https://jsfiddle.net/0402ds79/5/

私のために正常に動作するようですか?最後に何がうまくいかないかを指定できますか?

ご挨拶クリス

+0

ありがとうございます@kris。たぶん私はコードにいくつかの矛盾があります。私はそれをデバッグしようとします! – grcoder

+0

位置を修正するために再度更新しました。 – Chris

-1

[OK]を、私は恥じている。ブラウザにはという問題がありました。(Chrome)私は再開し、それは働き始めた。あなたの素晴らしいソリューションをありがとう!

他人を助けるだけです。また、fadOutの前にstop()を追加する必要があります。これにより、以前実行していたアニメーションが停止します。このような

$('.partner-logo-container').hover(
    function(){ 
    $(".image-without-color", this).stop().fadeOut(250);  
    $(".image-with-color", this).stop().fadeIn(250); 
    }, 
    function(){ 
    $(".image-with-color", this).stop().fadeOut(250); 
    $(".image-without-color", this).stop().fadeIn(250); 
    } 
); 
関連する問題