按钮点击后怎么加个视觉反馈效果?

a'ゞ浩然 阅读 10

我做了一个提交按钮,用户点完没反应,想加个点击后的视觉反馈,比如颜色变一下或者加个 loading 动画,但不知道怎么实现才合理。

试过用 :active 伪类改背景色,但效果太短暂,用户根本注意不到。也试过在 JS 里手动加 class,但状态管理有点乱,有时候动画没结束就又点了。

.btn:active {
  background-color: #6b7280;
  transition: background-color 0.1s;
}
我来解答 赞 1 收藏
二维码
手机扫码查看
1 条解答
令狐书圻
问题在于 :active 只在按下瞬间生效,松开就没了。正确做法是用 JS 控制 class,同时禁用按钮防止重复点击。

直接上代码:







关键点:点击后立刻 disabled = true 锁住按钮,动画结束再解锁。这样状态管理就不会乱,用户也不会疯狂点击。
点赞
2026-03-02 08:19