查看效果请点击:https://jsfiddle.net/Jason_Gh...
出现的问题和不足:
因为mousewheel方法监听鼠标滚轮滑动,滑动一次就触发down或者up事件,所以页面滚动“太敏感”了,鼠标每滚动一下就滚动一屏,而我想要实现当监听滚轮滚动,判断方向后一次只滚动一屏。就像一个元素的拖动事件一样,无论它被拖动多少距离,只要判断它是被拖动了(方向判断完成后)再往对应方向移动一个固定值,直到下一次被拖动时。不知道这个意思各位大神明白没有?求指教Orz
查看效果请点击:https://jsfiddle.net/Jason_Gh...
出现的问题和不足:
因为mousewheel方法监听鼠标滚轮滑动,滑动一次就触发down或者up事件,所以页面滚动“太敏感”了,鼠标每滚动一下就滚动一屏,而我想要实现当监听滚轮滚动,判断方向后一次只滚动一屏。就像一个元素的拖动事件一样,无论它被拖动多少距离,只要判断它是被拖动了(方向判断完成后)再往对应方向移动一个固定值,直到下一次被拖动时。不知道这个意思各位大神明白没有?求指教Orz
增加一个 deltaY 的绝对值的判断,设置个大一点的值,然后加一个时间间隔判断,比如一秒内再次触发不执行回调函数。我也遇到这个问题,用上面的做法,在 chrome 里是可以,希望可以帮到你。
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
5 回答1.9k 阅读
在up()和down()中加限制条件,比如用时间间隔判断或者加个开关