7

私はこの奇妙な振る舞いをしています.fadeIn()

私が書いたら

$('#MyDiv').show();

divは問題なく表示されます。

しかし、私が書くならば

$('#MyDiv').fadeIn(400);

divは表示されますが、不透明0です!

前の行は次のとおりです。

$('#MyDiv').hide()
    .html(TheHTML)
    .css('top', 0);

更新:私が書いた場合$('#MyDiv').show(400);

div も opacity のまま0です。

4

4 に答える 4

6

jQuery .fadeTo関数を試してください。

.fadeTo( duration, opacity [, callback] )  
.fadeTo( duration, opacity [, easing] [, callback] )  

サンプル:

$('#book').fadeTo('slow', 0.5, function() {
  // Animation complete.
});
于 2012-06-01T06:37:49.697 に答える
6

一部の CSS は、非表示のときに div をオーバーライドしています。不透明度スタイルを 1 として div に追加することをお勧めします。

そうでなければ、

$('#MyDiv').css('opacity','1');

フェードイン呼び出しの後...

于 2012-06-01T06:19:33.520 に答える
2

以下は、あなたが望むようにそれを見えるようにします

$('#MyDiv').animate({
  opacity: 1
},400);

以下を試すことができます:

$('#MyDiv').fadeIn(400, function(){
    $(this).css('opacity', 1)
});

デモ

しかし、あなたもうまくいくはずだと思います。こちらをご覧ください

于 2012-06-01T06:13:21.370 に答える
0

あなたが持っているかどうかを確認してください

opacity: 0 !important;

//or

opacity: 0;

その場合のCSSでは、opacityこのように自分で手動で変更する必要があります

$('#MyDiv').fadeIn(400,function(){
   $(this).css('opacity',1);
});

このフィドルを確認してください。最初の div は表示されません。

于 2012-06-01T06:22:34.373 に答える