我有以下代碼:頁腳一旦用戶滾動向上滑動到頁面底部 - 閃爍
var footer = $('.footer'),
extra = 0;
// footer.css({ opacity: '0', display: 'block' });
$(window).scroll(function() {
var scrolledLength = ($(window).height() + extra) + $(window).scrollTop(),
documentHeight = $(document).height();
console.log('Scroll length: ' + scrolledLength + ' Document height: ' + documentHeight)
if(scrolledLength >= documentHeight) {
footer
.addClass('bottom')
// .slideUp();
.stop().animate({ bottom: '0', opacity: '1' }, 300);
}
else if (scrolledLength <= documentHeight && footer.hasClass('bottom')) {
footer
.removeClass('bottom')
// .slideDown();
.stop().animate({ bottom: '-100', opacity: '0' }, 300);
}
});
我的目標是到頁腳一旦用戶滾動顯示在頁面的底部。如果用戶再次向上滾動,我希望頁腳再次滑下。
現在我正在檢查scrolledLength
對documentHeight
。然而,問題似乎是,一旦我們達到最低點,documentHeight
就會改變,因爲頁腳出現並擴展了文檔。
我的代碼確實有效,頁腳不會再消失或任何東西,但它閃爍很多(然後最終平靜下來),因爲它正在重新計算。我怎麼解決這個問題?我的代碼中是否有錯誤?
店如果頁腳是可見的一個布爾值,如果是,計算高度documenth高度 - footerHeight? –