原生js 滚动条返回顶部 动画函数
直接把饿了么的返回顶部动画提取出来了,直接上代码
//返回顶部函数
const cubic = (value) => Math.pow(value, 3);
const easeInOutCubic = (value) =>
value < 0.5 ? cubic(value * 2) / 2 : 1 - cubic((1 - value) * 2) / 2;
const el = document.documentElement;
export const goScroll = function() {
const beginTime = Date.now();
const beginValue = el.scrollTop;
const rAF =
window.requestAnimationFrame || ((func) => setTimeout(func, 16));
const frameFunc = () => {
const progress = (Date.now() - beginTime) / 500;
if (progress < 1) {
el.scrollTop = beginValue * (1 - easeInOutCubic(progress));
rAF(frameFunc);
} else {
el.scrollTop = 0;
}
};
rAF(frameFunc);
};
vue直接把这个函数丢到js文件里面然后import引入就行了,其他的比如传统html环境,自己把export去掉就行了,如何还是不会用,说明你js基础很差,自行百度吧。
分类:
JavaScript
标签:
javascript返回顶部原生js滚动条动画
版权申明
本文系作者 @木灵鱼儿 原创发布在木灵鱼儿站点。未经许可,禁止转载。
暂无评论数据