| 階段 | 目標 | 重點 API/概念 |
|---|---|---|
| 入門 | 掌握基本動畫 | .show()/.hide()/.toggle(), .fadeIn/Out/Toggle(), .slideDown/Up/Toggle(), .animate(props, dur, easing, complete) |
| 進階 | 複雜序列與佇列控制 | .delay(), .queue()/dequeue(), .stop(), .finish(), .promise(), 自定義 easing (jquery.easing) |
| 實戰 | 常見 UI 組件特效 | 手風琴、標簽切換、模態框彈出、圖片懶加載淡入、無縫輪播、下拉選單、Tooltips |
| 性能優化 | 流暢 60fps | CSS3 transition/animation 替代 JS 動畫, requestAnimationFrame, will-change, GPU 加速, 避免佈局抖動 |
transition/animation,僅在需精細控制邏輯(如動畫中途計算、回調鏈)時用 JS。Web Animations API 或 GSAP、Anime.js 等專業動畫庫。<button id="btn">展開/收起</button>
<div id="panel" style="display:none; background:#f0f0f0; padding:20px">內容區域</div>
<script src="https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.min.js"></script>
<script>
$('#btn').click(function() {
$('#panel').slideToggle(300, 'swing'); // 300ms 滑動切換
});
</script>
從 .slideToggle() 入手,漸進掌握 .animate()、佇列控制、CSS3 替代、性能優化。多逛 CodePen、W3Schools、官方 API,實際項目中「少用 jQuery 動畫、多用 CSS」是當前最佳實踐。