交错网格轴代码示例
import { animate, stagger } from 'animejs';
const grid = [11, 4];
const $squares = utils.$('.square');
function animateGrid() {
const from = utils.random(0, 11 * 4);
animate($squares, {
translateX: [
{ to: stagger('-.75rem', { grid, from, axis: 'x' }) },
{ to: 0, ease: 'inOutQuad', },
],
translateY: [
{ to: stagger('-.75rem', { grid, from, axis: 'y' }) },
{ to: 0, ease: 'inOutQuad' },
],
opacity: [
{ to: .5 },
{ to: 1 }
],
delay: stagger(85, { grid, from }),
onComplete: animateGrid
});
}
animateGrid();
<div class="small justified row">
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
</div>
<div class="small justified row">
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
</div>
<div class="small justified row">
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
</div>
<div class="small justified row">
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
<div class="square"></div>
</div>