首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

原生 JS 实现惯性滚动,给鼠标滚轮增加阻尼感,纵享丝滑

code.juejin.cn/pen/7272919488994279484本文将教会你如何让鼠标滚轮也能够丝滑地操作网页,带来更舒适的页面惯性滚动体验,同时讲解其中技术原理与细节,用最少量的代码实现 JS...实现原理首先需要利用 DOM 事件禁止鼠标滚动,转为 JS 控制。...通过 JS 模拟页面滚动实际可以看做是在执行一个连续的动画,这时候肯定就离不开与浏览器动画息息相关的 requestAnimationFrame 函数了,我们需要知道它的回调函数会传入一个 DOMHighResTimeStamp...(value);}此时页面就可以像往常一样滚动了,并且是不依赖系统默认事件的,由 JS 代理滚动效果,接下来我们继续往方法里处理如何平滑过渡。...(value);}这样就实现了一个平滑的惯性滚动效果,但实际上由于帧率是可变的(受屏幕刷新率影响),每帧之间的插值距离也会有所不同,要进一步优化阻尼效果还需要在线性插值的基础上增加阻尼系数和时间步长,目前大部分显示器在

89241

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券