【发布时间】:2020-04-23 23:16:22
【问题描述】:
我有一个函数可以处理每个时间段的滚动。此功能在用户使用鼠标滚轮滚动时起作用:
let shouldHandle = true
window.addEventListener('wheel', e => {
if (shouldHandle) {
handleScroll(e) // I will handle scrolls here
shouldHandle = false
setTimeout(() => {
shouldHandle = true
}, 750)
}
})
但是,当我使用笔记本电脑的触摸板滚动时,即使我移开手指,滚动仍然会发生(尤其是当我将手指加速到足够的速度并滚动,然后立即将手指从触摸板上移开时)。因此,即使用户在技术上没有滚动,滚动仍然会在 750ms 之后发生。这个问题已被问到here。该问题未收到处理此行为的答案。
我只想在上次滚动后经过一段时间后处理滚动。我要处理的滚动一定不是因为这种“预测触摸”滚动引起的滚动。目前有没有办法做到这一点?
【问题讨论】:
标签: javascript