2

ユーザーがスクロールしたピクセル数に応じて、divをフェードイン/フェードアウトできるようにする必要があります。これが私が持っている既存のjqueryです。ビューを切り替えることはできますが、その切り替えをフェードしたいと思います。ここでの正しい方法は何ですか?

$("#subOverlay").hide();

$(window).bind('scroll', function(){
    $("#subOverlay").toggle($(this).scrollTop() > 520);
});

ありがとう

4

3 に答える 3

9

それは次のように行うことができます:

$(window).bind("scroll", function() {
    if ($(this).scrollTop() > 520) {
        $("#subOverlay").fadeIn();
    } else {
        $("#subOverlay").stop().fadeOut();
    }
});

デモ:http: //jsfiddle.net/ZHkY8/

于 2012-06-23T12:53:44.020 に答える
2
$(window).bind("scroll", function() {
    if ($(this).scrollTop() > 520) {
        $("#subOverlay").stop().fadeOut();
     } else {
        $("#subOverlay").fadeIn();
    }
});

^^配列を逆にするだけです:)

于 2013-04-29T11:21:17.573 に答える
1

私はアレクサンダーのリンクに似たものに取り組んでいましたが、画面の上部で100%より速くフェードする必要がありました。

ブラウザのサイズに応じて、オブジェクトがフェードを開始するタイミングとフェードを終了するタイミングを調整できます。開始フェードの不透明度を0ではなく0.2で開始する場合は、調整することもできます。

http://www.kevinnunn.com/fadetest/

于 2013-09-19T18:43:55.850 に答える