我试图让它成为我的导航栏隐藏' (通过动画)当wheelDelta为负(向下滚动),当wheelDelta为正(向上滚动)时,导航栏会重新出现(动画)。
以下是我的JavaScript代码:
/* Scrolling Animation */
$(document).scroll(function () {
var evt = window.event();
var delta = evt.wheelDelta;
if ( delta >= 120 ){
$('.nav').animate({ top: '-65px' }, 200);
$('body').animate({ top: '0px' }, 200);
}
else if ( delta <= -120 ){
$('.nav').animate({ top: '0px' }, 200);
$('body').animate({ top: '65px' }, 200);
}
});
&#13;
但是,它并没有起作用。我做了一些故障排除,我发现问题是delta变量未定义。所以我认为我不知道如何正确获取wheelDelta属性。
有人能告诉我一个如何获取wheelDelta属性值并将其存储在变量中的示例吗?
感谢。
答案 0 :(得分:2)
window.event
不是一个功能。同样,评论scroll
中提到的与mousewheel
不同。试试这个:
$(document).on('mousewheel',function (evt) {
var delta = evt.originalEvent.wheelDelta;
console.log('scroll ' + delta, evt);
if ( delta >= 120 ){
$('.nav').animate({ top: '-65px' }, 200);
$('body').animate({ top: '0px' }, 200);
}
else if ( delta <= -120 ){
$('.nav').animate({ top: '0px' }, 200);
$('body').animate({ top: '65px' }, 200);
}
});