一、场景
网站的建设创新互联专注网站定制,经验丰富,不做模板,主营网站定制开发.小程序定制开发,H5页面制作!给你焕然一新的设计体验!已为成都木包装箱等企业提供专业服务。
tween.js是一款可生成平滑动画效果的js动画库
当你要实现一个返回顶部的功能时候你会怎么做,大部分人会使用document.body.scrollTop =0;这么写就实现了功能,
不过要更加的细腻一点我们不妨用tween的缓动来实现,看看效果如何吧。
之前我们写过tween的相关文章,这里不做介绍了。
二、代码
Top
三、requestAnimationFrame改写setInterval方法:
methods:{ backTop(){ var Tween = { Linear: function(t, b, c, d) { //匀速 return c * t / d + b; } } Math.tween = Tween; var t = 1; const b = document.body.scrollTop; const c = 1; const d = 1; var timer; timer= requestAnimationFrame(function fn(){ if(document.body.scrollTop > 0){ t--; console.log(t) console.log(t); const backTop = Tween.Linear(t,b,c,d); console.log(backTop); document.body.scrollTop = backTop; timer = requestAnimationFrame(fn); }else{ cancelAnimationFrame(timer) } }) } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。