Cod*_*ody 11 jquery scroll trackpad
我创建了一个网站,用户可以使用鼠标滚动或向上/向下箭头滚动浏览图库.它像我想要的那样工作,并且当用鼠标滚动时改变一个图像pr滚动.但是如果用户使用触控板滚动,则几乎不可能一次滚动单个图像.
所以我的问题是:有没有办法检查用户是否通过触控板滚动,然后更改滚动的行为,因此它变得不那么敏感,从而更容易一次滚动单个图像?
我不是很擅长jquery,到目前为止,我的解决方案已经从几个脚本中组合在一起:
http://jsfiddle.net/MukuMedia/PFjzX/33/
希望可以有人帮帮我 :)
我发现这里的幻数是40.
看起来,使用触控板(可能还有魔术鼠标),delta增加了40倍.
即使您取回普通鼠标并稍后滚动它也会保持这种状态.
所以我做了,使用jquery鼠标滚轮插件:
b.mousewheel(function(evt,delta,deltaX,deltaY){
if(Math.abs(deltaY)>=40)
deltaY/=40;
if(Math.abs(deltaX)>=40)
deltaX/=40;
//Do your stuff here.
});
Run Code Online (Sandbox Code Playgroud)
不,这是不可能的。我能想到的唯一解决方案是对滚动速度设置限制。我不会尝试破译您的代码,但我建议将timedOut
变量初始化为零,每次滚动到新图像时将其设置为 1。setTimeout()
例如,50 毫秒后,使用 a将其设置回零。在滚动到新图像之前,请检查此timedOut
变量,并且仅在其为零时才滚动。(确保你把你的检查放在setTimeout
里面timedOut
,否则每次鼠标滚轮移动时它都会被不断地调用,这不是你想要的。)
归档时间: |
|
查看次数: |
21755 次 |
最近记录: |