デザイナー内のインタラクションパネル(Interactions panel)は、トリガーとアニメーションを使用してシンプルで複雑なインタラクションを構築する場所です。トリガーは、要素をクリックするか、ページをスクロールするなどのアクションで、アニメーションを開始させるか、ページ上の1つ以上の要素を連続的にアニメーションさせることができます。
このレッスンで学ぶこと
トリガー(triggers)とアニメーションは、どんなインタラクションにおいても主要な要素です。
デザイナー内のインタラクションパネル(Interactions panel)は、トリガーとアニメーションを使用してシンプルで複雑なインタラクションを構築する場所です。トリガーは、要素をクリックするか、ページをスクロールするなどのアクションで、アニメーションを開始させるか、ページ上の1つ以上の要素を連続的にアニメーションさせることができます。
このレッスンで学ぶこと
インタラクションパネルは主に2つのセクションに分かれている: Element triggersとPage triggersです。
エレメントトリガーは、インタラクションパネルのElement triggersセクションに追加することができます。これらのトリガーは、サイト訪問者が要素とのインタラクション(ホバリングやクリックなど)を行った際にアニメーションを開始します。
エレメントトリガーを追加するには:
その後、リストから要素トリガーを選択することができます。さらに詳しく知りたい場合は、各オプションにホバーしてみることもできます。
利用可能なエレメントトリガーは以下の通りです:
エレメント・トリガーは、キャンバス上の1つまたは複数のエレメントをアニメーションさせることができます。言い換えると、トリガーとして機能する要素は、常にアクションのターゲットである必要はなく、別の要素をアニメーションさせるトリガーであることもできます。例えば、ボタンエレメントをトリガーエレメントとして設定し、クリックされると、イメージエレメントを円状に回転させることができます。
ナビゲーションバー、ドロップダウン、タブ、スライダーなど、サイト訪問者がインタラクションを行う際のカスタムアニメーションを追加することもできます。これらのトリガータイプには、キャンバス上で対応する要素(例:ナビゲーションバー、ドロップダウンなど)を選択することでアクセスできます。
キャンバス上でnavbar要素を選択すると、エレメントトリガーメニューでNavbar opensトリガーが利用可能になります。
ページトリガー( Page trigger.)は、ページの状態に変更があるときにアニメーションを開始するトリガーで、インタラクションパネルのエレメントトリガーセクションにエレメントトリガーを追加することができます。これらのトリガーは、ページが読み込まれたときなど、ページの状態が変化したときにアニメーションを開始します。
ページトリガーを追加するには、Page trigger の右側にある「プラス」をクリックします。
利用可能なページトリガーは次の通りです:
インタラクションパネルでトリガーのタイプを選択した後、トリガー後に実行したいアクションを指定できます。利用可能なアクションオプションは、選択したトリガータイプに依存します。たとえば、Mouse click (tap)エレメントトリガーを選択した場合、1回目と2回目のクリックで実行されるアクションを選択できます。
デフォルトでは、要素にトリガーを設定すると、その特定の要素とのインタラクションが発生します。このインタラクションは、すべてのデバイスブレークポイントで発生します。
特定のデバイスでアニメーションをトリガーするには、アニメーションを発生させたいデバイスのブレークポイントを確認できます。デフォルトでは、アニメーションはすべてのブレークポイント(デスクトップ以上、タブレット、横向きの電話、縦向きの電話)でトリガーされます。
たとえば、マウスクリックのインタラクションをデスクトップ以上のブレークポイントでのみ発生させたい場合、訪問者はマウスでインタラクションをトリガーできるようになります。
同じクラスを持つすべての要素でアニメーションをトリガーしたい場合、そのクラスの1つの要素にインタラクションを設定し、そのクラス全体に適用することができます。
そのクラスのすべての要素にアニメーションを設定するには:
インタラクションの再利用について詳しく学ぶ。
多くのページスクロールトリガー(例:「ビュー内にスクロール」「ビュー内スクロール(連続)」など)では、offsetを設定するオプションがあります。これにより、特定のスクロールページのパーセンテージに達するまで、インタラクションが開始されなくなります。スクロールオフセットが長いほど、サイトの訪問者がスクロールするまでに時間がかかります。
アニメーションに遅延(delay)を設定することで、指定された遅延時間が経過してからアニメーションが発生するようになります。
アニメーションのスムージングも変更できます。スムージングは、アニメーションがマウスの動きにどれくらい迅速に応答するかを定義します。スムージングについて詳しく学ぶ。
今作成したトリガーに基づいてアニメーションを設定するには、カスタムcustom animationを作成するか、プリビルトアニメーション(fade, shrink, jelloなど)を選択できます。
プリビルトアニメーションは、デザイナーで事前に設定された出現と消失、強調アニメーションです。これらを選択することで、アニメーションの各側面を個別に構築する必要がないため、迅速な代替手段を選択できます。
プリビルトアニメーションを設定するには:
カスタムアニメーションを設定するには:
次に、アニメーションのタイミングをanimation timeline で調整します。
新しいアニメーションを作成するか、既存のアニメーションを編集する場合でも、アニメーションタイムラインは異なる要素をキーフレームでアニメーション化する場所です。
アニメーションタイムラインにアクションを追加するには、まずanimation timelineに移動します。次に、アクションを2つの方法で追加できます。
たとえば、「While page is scrolling」のページトリガー用のアニメーションを作成します。ページをスクロールすると、ヒーローセクションのテキストが水平方向に移動し、不透明度が低くなります。アニメーションタイムラインの緑色の再生ヘッドは、ページの現在位置(0%から100%)を示しています。
タイムドアニメーションは通常、他のトリガー(ミリ秒、秒など)を使用しますが、この例ではページの現在のスクロール位置をパーセンテージで示しています。この場合、0%はページの上部のスクロール位置を示し、100%はページの下部のスクロール位置を示します。
さて、ページ内のポイントにさまざまなアクションを追加できます。たとえば、0%のスクロール位置に4つのアクションを追加できます。
これらのアクションによって、テキスト背景とテキスト前景の位置が0px(移動なし)に設定され、不透明度が100%(完全に不透明)に設定されます。サイト訪問者がページの上部にいるとき、テキスト背景と前景は完全に不透明で、ページ上の元の位置に設定されます
また、100%のスクロール位置に4つのアクションを追加することもできます:
この場合、各要素はそれぞれ900pxの距離だけ移動し、不透明度が0%に設定されます。スクロールアニメーションの終了アクションを見てみましょう。
これらのアクションによって、テキスト背景とテキスト前景の位置が900px(両側に900px移動)に設定され、不透明度が0%(完全に透明)に設定されます。サイト訪問者がページの下部にいるとき、テキスト背景と前景は完全に透明で、元の位置からサイトページの右または左に900px移動します。
デフォルトでは、アニメーションタイムラインに追加するすべてのアクションは、選択した要素に影響を与えます。ただし、アクションのターゲットを次の2つの方法で変更できます:
アクションが影響を及ぼす要素を置き換えるには:
アクションを作成した後、このアクションが以下のどれに影響を与えるかを選択できます:
選択した要素は、作成したアニメーションのアクションのデフォルトの対象です。選択した要素に影響を及ぼすように設定した任意のアクションは、常にその特定の要素に影響を及ぼします。したがって、アクションが選択した要素に影響を及ぼすように再利用する場合、そのアクションはどの要素がインタラクションをトリガーに設定されているかに関係なく、その要素に影響を及ぼします。
また、選択した要素のクラスを対象にすることもできます。これにより、アニメーションアクションが選択した要素と同じクラスを持つすべての要素に影響を及ぼします。
このオプションは、ページが読み込まれる際に複数の要素を同じパターンで移動させたい場合に便利です。すべての要素に同じクラスを割り当て、異なる位置に移動するためにコンボクラスを使用してページ上の異なる位置に移動させます。その後、同じアニメーションアクションをベースクラスに適用して、各要素が同じパターンで移動しますが、異なる元の位置から移動します。
また、影響を受ける要素を、インタラクションのトリガーと同じクラスを持つ子要素、兄弟要素、または親要素に制限することもできます。
アクションによって影響を受けるクラスを制限するために、それらがトリガー要素の子要素、兄弟要素、または親要素であるかどうかを指定することができます。
このオプションは、例えば、同じクラスを持つボタン要素内のすべての矢印をホバーするとアニメーションさせたい場合に便利です。同じクラスを持つすべての要素にアニメーションアクションを追加すると、1つのボタンにホバーするとそのページ内のすべてのボタン内のすべての矢印がアニメーションされることに気付くでしょう。すぐにホバーしているボタンにアニメーションアクションを制限するには、Affect メニューに移動して「クラス」を選択します。次に、Class のドロップダウンをクリックし、「このクラスを持つ子要素のみ」を選択します。
「Only siblings with this class」オプションは、アニメーションを適用したい要素がトリガー要素の兄弟要素である場合、例えばメニュードロップダウンやポップアップモーダルの場合に便利です。また、「Only parents with this class」オプションは、アニメーションを適用したい要素がトリガー要素の親要素である場合に使用できます。
また、Interaction triggeにのみ影響を与えるアクションを作成することもできます。その後、他のインタラクションでアニメーションを再利用する場合、アニメーションは新しいインタラクションのトリガー要素に対応する要素でアクションの前のターゲット要素を置き換えます。これにより、新しいアニメーションを作成する必要なく、同じアニメーションを素早く任意の要素に適用できます。
既存のアニメーションを編集するには、インタラクションパネルに移動し、アニメーションをクリックして設定を開きます。次に、アニメーションの名前の上にカーソルを移動して、名前の右側にある設定の「歯車」アイコンをクリックします。これにより、そのアニメーションのアニメーションタイムラインが開きます。
その他のリソース
インタラクションパネルからトリガーやアニメーションを削除できます。これにより、トリガーやアニメーションが対象の要素またはページアクションから削除されます。トリガーやアニメーションを削除するには:
インタラクションパネルからアニメーションや、アニメーションに関連付けられていないトリガーを削除しても、それはサイトから完全にトリガーまたはアニメーションを削除するわけではありません。これは、以前に作成したアニメーションを他の要素やページのトリガーで再利用できるためです。ただし、使用されていないトリガーやアニメーションを整理して、サイトの最適化とパフォーマンスを向上させることができます。
未使用のインタラクションを整理すると、削除されるトリガーを選択することはできませんが、削除または保持するアニメーションを選択できます。未使用のトリガーはすべて、未使用のインタラクションを整理する際に削除されます。
未使用のトリガーやアニメーションを整理するには: