トリガー
data-animは4つのトリガータイプをサポートしています。各タブをクリックして動作を確認。
Scroll into view
Default trigger. Animates when the element enters the viewport.
<div data-anim="fadeInUp">...</div> ビューポート(デフォルト)
要素がビューポートにスクロールインすると、IntersectionObserverでアニメーションします。
<div data-anim="fadeInUp">
Animates on scroll (default)
</div>
<!-- With custom offset -->
<div
data-anim="fadeIn"
data-anim-offset="200"
>
Triggers 200px into viewport
</div> ホバー
mouseenterで再生、mouseleaveでリセット。キーボードユーザー向けにfocus-visibleにも対応。
<div data-anim="pulse" data-anim-trigger="hover">
Hover over me
</div> クリック
クリックごとに再生。ボタンやトグルに最適。
<button data-anim="bounce" data-anim-trigger="click">
Click me to bounce
</button> フォーカス
要素がフォーカスを受け取ると再生。フォーム入力に最適。
<input
type="text"
data-anim="pulse"
data-anim-trigger="focus"
placeholder="Focus me"
/> トリガーの組み合わせ
各要素には1つのトリガーのみ。複数のインタラクションにはネストを使用:
<div data-anim="fadeInUp">
<button data-anim="pulse" data-anim-trigger="hover">
Interactive button
</button>
</div> まとめ
| トリガー | 値 | ユースケース |
|---|---|---|
| ビューポート | viewport(デフォルト) | スクロール表示 |
| ホバー | hover | ボタン、カード |
| クリック | click | トグル、確認操作 |
| フォーカス | focus | フォーム入力 |