FireFox浏览器使用DOMMouseScroll事件,其他(包括IE6)都是使用onmousewheel事件;
FireFox中wheelDelta判断滚动方向,其值为120/-120,为负数的时候表示向下滚动,整数的时候向上滚动
其他:detail(属性)判断方向,返回值是3的整数倍(3/-3), 为正数表示向上滚动,负数向下滚动
opera:同时拥有wheelDelta和detail,其中“detail”属性返回值和FF中的wheelDelta相同
即:
1 // jquery 兼容的滚轮事件 2 $(document).on("mousewheel DOMMouseScroll", function (e) { 3 console.log(e); 4 5 var delta = (e.originalEvent.wheelDelta && (e.originalEvent.wheelDelta > 0 ? 1 : -1)) || // chrome & ie 6 (e.originalEvent.detail && (e.originalEvent.detail > 0 ? -1 : 1)); // firefox 7 if (delta > 0) { 8 // 向上滚 9 console.log("wheelup"); 10 } else if (delta < 0) { 11 // 向下滚 12 console.log("wheeldown"); 13 } 14 });