2

divをvisibilityに設定しています:後で表示したいCSSに隠されています。これが私がこれまでに持っているjQueryですが、機能していません:

$(document).ready(function() {
    $('#start').click(function() {
        $(this).fadeOut(1000, function() {
             $('body').css('background-color','#999', function() {
                    $('.menu').fadeTo('slow',1);
             });
        });
    });
});

次のことが順番に発生するはずです。

  1. ユーザーが「#start」をクリックすると「#start」がフェードします。(これは起こります。)
  2. ページの背景色が元の色から灰色に変わります。(これは起こります。)
  3. div'.menu'がフェードインするはずです(これは発生しません)。

私は何が間違っているのですか?違いが生じる場合、「。menu」は子divの束だけで埋められます。

4

2 に答える 2

1

http://api.jquery.com/css/ .css()には3番目の引数がなく、cssプロパティと値の2つの引数、またはcssプロパティと値のペアのオブジェクトのいずれかを受け入れます。

また、「未定義」が指摘しているように、不透明度、可視性、表示に注意する必要があります。それぞれがオブジェクトを非表示にすることができますが、jqueryアニメーションでは動作が異なります。

.fadeTo()は、オブジェクトの不透明度のみを変更します。.fadeIn()は、でオブジェクトを変更してdisplay:noneからdisplay:block、不透明度を変更します。

visibility:hidden実際に最初に可視性を0に設定し、不透明度を0に設定する必要があるオブジェクトがある場合は、visiblefadeTo()を使用します。

display:none代わりに使用し、代わりにvisibility:hidden使用fadeIn()することをお勧めします(「未定義」のように)fadeTo()

$('body').css('background-color','#999');
$('.menu').fadeIn('slow',1);
于 2013-02-17T20:42:20.433 に答える
1

fadeToopacity要素のプロパティを変更します。またはopacityの代わりにを使用するか、要素のプロパティをにvisibility設定してメソッドを使用する必要があります。displaynonefadeIn

cssまた、3つのパラメータを受け入れないことに注意してください。

.menu { display: none }

$(document).ready(function() {
    $('#start').click(function() {
        $(this).fadeOut(1000, function() {
             $('body').css('background-color','#999');
             $('.menu').fadeIn('slow');
        });
    });
});

ただし、visibilityプロパティを変更する場合は、次のcssメソッドを使用できます。

$('.menu').css('visibility', 'visible');
于 2013-02-17T20:32:13.323 に答える