答案:通过引入 Font Awesome 和 Animate.css 并结合 JavaScript 控制类名,可实现图标点击弹跳动画。1. 引入两个 CDN 资源;2. 添加带 ID 的图标元素并设置交互样式;3. 用 JavaScript 绑定点击事件,动态添加 animate__animated 和 animate__bounce 类,并在动画结束后移除;4. 可选监听 animationend 事件精确清理类,确保每次点击均可触发。该方法适用于点赞等交互场景,关键在于正确使用类名前缀与及时清除类状态。

想让 Font Awesome 图标点击时产生弹跳动画,可以结合 Animate.css 提供的 bounce 类轻松实现。整个过程不需要写复杂的 CSS 动画代码,只需引入库并用 JavaScript 控制类的添加即可。
1. 引入必要的资源
确保页面中加载了 Font Awesome 和 Animate.css 的 CDN 链接:
cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css">这两行代码将图标库和预设动画样式引入项目。
2. 添加图标元素
在 HTML 中插入一个 Font Awesome 图标,例如心形图标:
立即学习“前端免费学习笔记(深入)”;
设置 id 便于用 JavaScript 操作,同时添加手型光标提升可交互感。
3. 使用 JavaScript 触发动画
为图标绑定点击事件,动态添加 Animate.css 的 animate__bounce 类(注意新版前缀是 animate__):
this.classList.add('animate__animated', 'animate__bounce');
// 动画结束后移除类,以便下次触发
setTimeout(() => {
this.classList.remove('animate__animated', 'animate__bounce');
}, 600);
});
关键点:
- 必须同时添加 animate__animated 和 animate__bounce 才能生效。
- 使用 setTimeout 在动画完成(约 500–600ms)后清除类,否则动画只能播放一次。
4. 可选:增强体验
如果希望连续点击都能触发,不要立即移除类,而是监听 animationend 事件:
this.addEventListener('animationend', function() {this.classList.remove('animate__animated', 'animate__bounce');
}, { once: true });
这样更精确,避免定时器误差。
基本上就这些。使用 Font Awesome 结合 Animate.css 是实现图标动效的快捷方式,适合点赞、收藏等交互场景。不复杂但容易忽略类名前缀和清理机制。










