Some checks failed
Deploy / deploy (push) Has been cancelled
深浅色切换的圆环扩散原本把圆心写死在 window.innerWidth / 2,不管点哪儿都从屏幕 正中冒出来。改成取指针落点。 半径也跟着修了。原来是 hypot(x, y),只量到左上角——圆心居中时恰好是对的,一挪到 按钮(在右上角)就不够长了,右下角会留一大块旧配色等圆环扩过去,看着像没刷新。 现在取到最远那个角的距离。 键盘触发(Enter / 空格)时 clientX/clientY 是 0,照用会让圆环从屏幕左上角冒出来, 这种情况退回按钮自身中心,用 event.detail === 0 判断。 startViewTransition 的降级判断原样保留,机房那批 Chrome 低于 94 仍然是直接切。 实测(钩住 documentElement.animate 看真实关键帧,视口 1280x633、按钮中心 1255,29): 点正中得 circle at 1255px 29px / r=1392.78,点按钮左上角 (1246,22) 得 at 1246px 22px, 说明跟的是指针不是按钮;键盘 Enter 得 at 1255px 29px,没跑到 (0,0)。三次主题都正确 翻转,无报错。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
oj.xuyue.cc