Javascript 如何获得wheelDelta属性?

Javascript 如何获得wheelDelta属性?,javascript,Javascript,我正试图使我的导航栏“隐藏”(通过动画),当wheelDelta为负值时(向下滚动),当wheelDelta为正值时(向上滚动),导航栏重新显示(动画) 以下是我的JavaScript代码: /*滚动动画*/ $(文档)。滚动(函数(){ var evt=window.event(); var delta=evt.wheelDelta; 如果(增量>=120){ $('.nav').animate({top:'-65px'},200); $('body').animate({top:'0px'

我正试图使我的导航栏“隐藏”(通过动画),当wheelDelta为负值时(向下滚动),当wheelDelta为正值时(向上滚动),导航栏重新显示(动画)

以下是我的JavaScript代码:

/*滚动动画*/
$(文档)。滚动(函数(){
var evt=window.event();
var delta=evt.wheelDelta;
如果(增量>=120){
$('.nav').animate({top:'-65px'},200);
$('body').animate({top:'0px'},200);
}

else if(delta
窗口。事件
不是一个函数。正如注释中所述,滚动
与鼠标滚轮不同。请尝试以下操作:

   $(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);
      }
    });
$(文档).on('mouseweel',函数(evt){
var delta=evt.originalEvent.wheelDelta;
console.log('scroll'+delta,evt);
如果(增量>=120){
$('.nav').animate({top:'-65px'},200);
$('body').animate({top:'0px'},200);
}

else if(delta)这个anwser应该可以帮助您。问题是滚动事件不仅仅来自鼠标,而是html中窗格的移动。这意味着只有init有一个控制盘,在那之后,触发滚动事件的只是窗格的移动(有时每秒几十个)。改为绑定到控制盘事件。