js/jq判断鼠标滚轮方向
js判断鼠标滚轮方向:
var scrollFunc = function (e) { e = e || window.event; if (e.wheelDelta) { //判断浏览器IE,谷歌滑轮事件 if (e.wheelDelta > 0) { //当滑轮向上滚动时 //事件 } if (e.wheelDelta < 0) { //当滑轮向下滚动时 //事件 } } else if (e.detail) { //Firefox滑轮事件 if (e.detail> 0) { //当滑轮向上滚动时 //事件 } if (e.detail< 0) { //当滑轮向下滚动时 //事件 } } } //给页面绑定滑轮滚动事件 if (document.addEventListener) {//firefox document.addEventListener('DOMMouseScroll', scrollFunc, false); } //滚动滑轮触发scrollFunc方法 //ie 谷歌 window.onmousewheel = document.onmousewheel = scrollFunc;
jq看起来就很简单:
$(document).ready(function(){ var p=0;t=0; $(window).scroll(function(e){ p=$(this).scrollTop(); if(t<=p){ console.log('下滚') } else{ console.log('上滚') } t = p; }) })
但以上方法会在监听时调用多次,可以采用节流函数解决。