calc-animate-val
Version:
根据总时长、当前时间、缓动函数来计算动画元素每次执行时所在的位置。
30 lines (28 loc) • 771 B
Markdown
# calcAnimateVal
```js
npm i calc-animate-val
```
根据总时长、当前时间、缓动函数来计算动画元素每次执行时所在的位置。使用requestAnimationFrame执行动画,获取当前时间。在不支持rAf的平台,需要自行polyfill rAF。
### 实例:一键回到顶部
```js
import calcAnimateVal from 'calc-animate-val'
const { run, pause, done } = calcAnimateVal({
position: [document.documentElement.scrollTop, 0],
duration: 2000,
timingFn: 'easeOutQuint',
delay: 0,
running: y => window.scrollTo(0, y),
done: () => alert('动画完成')
})
run() // 执行
pause() // 暂停
done() // 立即中断动画
```
### 指南
```typescript
interface CalcAnimateVal {
(opt: Options): CalcFnResult
rAF: any
cancelRAF: any
}
```