ユーザーがページを少し下にスクロールした後に背景バーが表示されるナビゲーションを設計しています。上にスクロールして戻ると、バー(背景色)が消えます。私は次の手順を使用してそれを行っています:
垂直スクロールに基づいてjqueryでクラスを追加/削除しますか?
正常に動作しますが、スクロール時にバーのフェードインとフェードアウトを追加したいと思います。私はfadeIn()メソッドとfadeOut()メソッドを追加してみました。問題は、フェードアウトすると、#navdiv全体がフェードアウトすることです。背景色だけではありません。これがクエリです
$(function() {
//caches a jQuery object containing the header element
var header = $('.noBackground');
$(window).scroll(function() {
var scroll = $(window).scrollTop();
if (scroll >= 500) {
header.removeClass('noBackground').addClass('blackBackground').fadeIn();
} else {
header.removeClass('blackBackground').fadeOut().addClass('noBackground');
}
});
});
このフィドルのフル、HTML、CSS、jQuery