質問:私は次のアニメーションを達成しようとしています:モバイルでページが読み込まれるとき、ID "サブヘッダー"ユーザーは、50px以上のページをスクロールして、サブヘッダーを隠すようにします。最後に60PXアップユーザーがスクロールであれば、いつでも私は、私は以下のコードを見ています何スクロール位置に基づいてサブヘッダーを表示/非表示にする
を.SHOWするサブヘッダーたいページの中:ページはメニューが非表示になりますが、私は上にスクロールするとき、それは示しており、複数の隠しスクロールを止めてから
はJQuery:
var newScroll = 0;
var subHeaderPosition = true;
var currentScroll = 0;
$(window).scroll(function() {
currentScroll = $(window).scrollTop();
if ($(window).width() < 779) {
if (currentScroll > 50 && subHeaderPosition) {
console.log("Current Scroll position: " + currentScroll);
console.log("Scroll should hide");
$("#sub-header").hide(300);
subHeaderPosition = false;
newScroll = $(window).scrollTop();
console.log("New Scroll position: " + newScroll);
} else if ((currentScroll - 60) < newScroll && !subHeaderPosition) {
console.log("Scroll position: " + currentScroll);
console.log("Scroll should show Sub-Header");
$("#sub-header").show(300);
subHeaderPosition = true;
newScroll = $(window).scrollTop();
} else {
newScroll = $(window).scrollTop();
}
}
});
UPDATE:さらにいくつかのログを追加した後、私は今、私のnewscrollとcurrentscrollは常に正しい方向に私を指す同じ番号を終了していることを伝えることができます。私はそれを持っているか、誰かが私がすべての耳であると判断した場合、私は解決策を投稿します。
残念ながら、ユーザーがページの上部に移動したときだけでなく、スクロールを開始した場合に「ヘッダー」が表示されます。 – Denoteone