如何区分上滚和下滚鼠标事件

时间:2018-03-31 14:05:56

标签: javascript jquery

我想知道如何区分两个不同的事件" Roll up"和"滚动"。 Function1应在rollup上执行,而Function2在rolldown上执行。 我刚看到onmousewheelonscroll个事件,这两个事件都会在上下滚动时调用。

清除我的问题:

function up(){  alert("you rolled up with mouse wheel")};
function down() { alert("you rolled down with mouse wheel")}; 

如何避免同时执行上述功能?

1 个答案:

答案 0 :(得分:1)

如果你想使用jQuery,你可以检查这个答案:

How can I determine the direction of a jQuery scroll event?

var lastScrollTop = 0;
$(window).scroll(function(event){
   var st = $(this).scrollTop();
   if (st > lastScrollTop){
       // downscroll code
   } else {
      // upscroll code
   }
   lastScrollTop = st;
});

基本上,您存储最后一个滚动值并将其与新值进行比较。还有一个带有delta值的酷代码笔样本,用于配置解决方案的敏感性:https://codepen.io/josiahruddell/pen/piFfq