刷新() JS
重新计算以 基于函数的值 定义的动画属性值,方法是将 from(起始)值更新为当前的当前目标值,并将 to(结束)值更新为新计算出的值。
仅重新计算可动画属性的值,duration(持续时间)和 delay(延迟)无法被刷新。
返回
动画本身
可与其他动画方法链式调用。
refresh() 代码示例
import { animate } from 'animejs';
const [ $refreshButton ] = utils.$('.refresh');
const animation = animate('.square', {
x: () => utils.random(0, 17) + 'rem',
y: () => utils.random(-1, 1) + 'rem',
rotate: () => utils.random(-360, 360, 1),
scale: () => utils.random(.1, 1.5, 2),
duration: 750,
loop: true,
onLoop: self => self.refresh()
});
const refreshAnimation = () => animation.refresh().restart();
$refreshButton.addEventListener('click', refreshAnimation);
<div class="medium row">
<div class="square"></div>
</div>
<div class="medium row">
<div class="square"></div>
</div>
<div class="medium row">
<fieldset class="controls">
<button class="button refresh">Refresh & Restart</button>
</fieldset>
</div>
#resize .large.log.row {
margin-top: 1rem;
}