ユーザーが下にスクロールしているときにスクロールで要素(#topNav)をフェードインしようとしているだけで、ユーザーが上にスクロールしてscrollTopにヒットすると、フェードアウトします。下にスクロールするとフェードインします。上にスクロールするとフェードアウトします。
しかし、それは両方向にフェードインしていますか?
私は何を間違っていますか?
function scrollFunc(e) {
if ( typeof scrollFunc.x == 'undefined' ) {
scrollFunc.x=window.pageXOffset;
scrollFunc.y=window.pageYOffset;
}
var diffX=scrollFunc.x-window.pageXOffset;
var diffY=scrollFunc.y-window.pageYOffset;
if(diffX<0){
// Scroll right
}
else if(diffX>0){
// Scroll left
}
else if(diffY<0){
// scroll down
$('#topNav').fadeIn();
}
else if(diffY>0){
// Scroll up
if(document.body.scrollTop === 0){
//reached top
$('#topNav').fadeOut();
}
}
else{
// First scroll event
$('#topNav').css('position','fixed').show().fadeIn();
}
scrollFunc.x=window.pageXOffset;
scrollFunc.y=window.pageYOffset;
}
window.onscroll=scrollFunc;