如何指定每一步滚动移动多少像素? [英] How to specify how many pixels scroll moves on each step?
本文介绍了如何指定每一步滚动移动多少像素?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
当我使用鼠标滚轮滚动 div
中的内容时,我希望它滚动例如 30px
每一步或每个鼠标滚轮刻度 w/e 是最好的解决方案.
我更喜欢 performance >轻松
即我更喜欢 javascript >jquery
When I use mouse wheel to scroll content in div
I want it to scroll by e.g., 30px
each step or each mouse wheel tick w/e is the best solution.
I would prefer performance > ease
i.e. I'm preferring javascript > jquery
推荐答案
所以我自己摆弄了一些解决方案,你可以看例子 这里
感谢 Tom 带领我找到这个答案.
So I fiddled some solution of my own, you can see example here
Thanks Tom for leading me to this answer.
JS:
function wheel($div,deltaY){
var step = 30;
var pos = $div.scrollTop();
var nextPos = pos + (step*(-deltaY))
console.log("DelatY: " + deltaY + ", Step: " + step + ", nextPos: " + nextPos);
$div.scrollTop(nextPos);
}
$('#test').bind('mousewheel', function(event, delta, deltaX, deltaY) {
wheel($(this),deltaY);
event.preventDefault();
});
使用的库:
- jQuery 1.8.3
- jQuery 鼠标滚轮
这篇关于如何指定每一步滚动移动多少像素?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文