gpt4 book ai didi

javascript - HammerJS 连续拖动(释放后拖动)

转载 作者:行者123 更新时间:2023-11-29 14:52:04 24 4
gpt4 key购买 nike

我可以使用 HammerJS 实现发布后拖动吗(以及如何...)? (我将它与 AngularJS 一起使用,但这无关紧要)

我问的原因是我想实现平滑滚动(就像原生iOS在松开手指后继续滚动)

我相信这可以以某种方式完成,因为在手势事件中有一个速度属性。

我的代码在我的内容之上有一个覆盖 div,用于检测触摸,然后我根据它手动控制下面 div 的滚动。

最佳答案

您只需要在 panend 上设置自己的速度回调。像下面这样的东西应该可以工作(假设使用 Hammer v2)

    var friction = -0.05;

function panend(evt) {
applyVelocity(evt.velocityY,evt.direction);
}

function applyVelocity(v,dir) {
var dist = v*16;
if(dir===Hammer.DIRECTION_DOWN) {
dist*=-1;
}

//code here to move your elements Y transform

if(v>0) {
v+=friction;
window.requestAnimationFrame(function(){
applyVelocity(v,dir);
});
}
}

关于javascript - HammerJS 连续拖动(释放后拖动),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24129631/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com