TILT
倾斜 + 指针光斑
±6°/±8° 上限,两个 CSS 变量喂给 ::after 的径向光。
计数器与错峰
过程轨道
标好 data-reveal / data-process,别的不用管。
所有滚动监听合并进同一个 rAF,不各扫一遍。
IntersectionObserver 优先,顺手补一次视口预扫。
倾斜 · 磁吸 · 漂移
±6°/±8° 上限,两个 CSS 变量喂给 ::after 的径向光。
按中心偏移算 ±7px,离开即复位,不抢原生 focus。
按卡片中心到视口的距离,写一个 --py 给图片。
折叠
script defer 即可;场只有一块 2D canvas,粒子数按面积夹在 26–88,离开视口与切后台都停帧。window.motionKit.applyTheme,切换按钮点一下就会走圆形揭示的 View Transition。