拡張パラメータ: Anime.js を使用した JavaScript ベースのアニメーション、パート 2
Anime.js シリーズの最初のチュートリアルでは、アニメーション化するターゲット要素を指定するさまざまな方法と、アニメーション化できる CSS プロパティと DOM プロパティの種類について学びました。前のチュートリアルのアニメーションは非常に基本的なものでした。すべてのターゲット要素は、単純に一定の距離を移動するか、固定速度で境界半径を変更します。
よりリズミカルな方法でターゲット要素をアニメーション化する必要がある場合があります。たとえば、10 個の異なる要素があり、各要素のアニメーションの開始間に 500 ミリ秒の遅延を設けて左から右に移動するとします。同様に、各要素の位置に基づいてアニメーションの継続時間を増減したい場合があります。
このチュートリアルでは、Anime.js を使用して、特定のパラメーターを使用してさまざまな要素のアニメーションの時間を正確に計測する方法を学習します。これにより、個々の要素またはすべての要素のアニメーション シーケンスの再生順序を制御できるようになります。
属性パラメータ
これらのパラメータを使用すると、単一のプロパティまたはプロパティのグループの継続時間、遅延、イージングを一度に制御できます。 duration
および lay
パラメーターはミリ秒単位で指定します。期間のデフォルト値は 1000 ミリ秒または 1 秒です。
これは、特に指定がない限り、要素に適用されるアニメーションは 1 秒間再生されることを意味します。 遅延
このパラメータは、アニメーションがトリガーされてから開始するまでの時間を指定します。遅延のデフォルト値は 0 です。これは、アニメーションがトリガーされるとすぐに開始されることを意味します。
easing
パラメータを使用して、アクティビティ中にアニメーションが再生される速度を制御できます。一部のアニメーションはゆっくり始まり、途中で速度が上がり、最後に再び遅くなります。初めは速く、残りは遅くなる人もいます。
ただし、どのような場合でも、アニメーションは常に duration
パラメータで指定された時間内に完了します。 Anime.js には、名前だけを使用して要素に直接適用できるイージング関数が多数用意されています。一部のイージング関数では、elasticity
パラメーターの値を設定して、要素の値がバネのように前後にどの程度跳ね返るかを制御することもできます。
このシリーズの最後のチュートリアルでは、さまざまなイージング関数について詳しく学習します。次のコード スニペットは、これらすべてのパラメータをさまざまなアニメーションに適用する方法を示しています。
リーリーご覧のとおり、これらのパラメータは他のパラメータとは独立して使用することも、他のパラメータと組み合わせて使用することもできます。 cubicAnimation
は、duration
パラメーターと easing
パラメーターの両方を適用します。期間が指定されていない場合、アニメーションは 1 秒間実行されます。これで、1,200 ミリ秒、つまり 1.2 秒間実行されます。
上記の例の属性パラメーターの主な制限の 1 つは、ターゲット要素のすべてのアニメーションが同じ duration
、delay
、および easing
の値を持つことです。 。
これは望ましい動作である場合もあれば、そうでない場合もあります。たとえば、ターゲット要素の境界半径のパンと変更を同時に行うのではなく、最初にターゲット要素を移動してからその境界半径をアニメーション化したい場合があります。 Anime.js では、各プロパティの duration
、delay
、easing
、 elastic
パラメーターに異なる値を指定できます。以下のコードとデモを見ると、それがより明確になるはずです。
上記のコードでは、アニメーション化するすべてのプロパティの値が異なります。背景色のアニメーションの持続時間は 400 ミリ秒ですが、回転アニメーションとパン アニメーションの持続時間のグローバル値は 1500 ミリ秒です。
背景色のアニメーションも遅延するため、色の変更は 1500 ミリ秒が経過した後にのみ開始されます。 rotate
プロパティと translateY
プロパティは、ローカル値もグローバル値も提供していないため、delay
パラメータと easing
パラメータのデフォルト値を使用します。彼らにとって価値があるのです。
基于函数的参数
当您想要更改单个属性的动画顺序和持续时间时,基于属性的参数非常有用。但是,相同的 duration
和 delay
仍将应用于所有目标元素上的各个属性。基于函数的参数允许您单独指定 duration
、delay
、elasticity
和 easing
以紧凑的方式针对不同的目标元素。
在这种情况下,您可以使用函数而不是数字来设置不同参数的值。这些函数接受三个参数:target
、index
和 targetCount
。 target
参数存储对当前目标元素的引用。 index
参数存储当前目标元素的索引或位置。 targetCount
参数存储目标元素的总数。
当需要根据目标元素的某些属性设置动画值时,target
参数非常有用。例如,您可以将目标元素的 delay
、duration
或 easing
值存储在数据属性中,然后稍后访问它们.
类似地,您可以访问目标元素的背景颜色,然后操作它来为各个元素设置最终的唯一颜色值。通过这种方式,您可以对所有元素进行动画处理,使其背景颜色比当前颜色深 20%。
index
参数为您提供当前目标在目标元素列表中的位置。您可以使用它逐步更改不同元素的 duration
和 delay
等参数的值。
当您想要按升序设置值时,这通常很有用。您还可以从 targetCount
中减去 index
以按降序设置值。以下代码片段使用这两个参数来按升序和降序指定值。
var delaySequence = anime({ targets: '.square', translateY: 250, delay: function(target, index) { return index * 200; } }); var delaySequenceR = anime({ targets: '.square', translateY: 250, delay: function(target, index, targetCount) { return (targetCount - index) * 200; } });
以下代码使用 index
参数为每个目标元素设置不同的 easing
值。
var easeInValues = ['easeInQuad', 'easeInCubic', 'easeInQuart', 'easeInQuint', 'easeInSine', 'easeInExpo', 'easeInCirc', 'easeInBack', 'easeInElastic']; var easeInSequence = anime({ targets: '.square', translateY: 250, duration: 2000, easing: function(target, index) { return easeInValues[index]; }, autoplay: false });
动画参数
最后一组参数允许您指定动画应播放的次数以及播放的方向。您可以使用loop参数指定动画播放的次数。还有一个 autoplay
参数,可以设置为 true
或 false
。它的默认值为 true
,但您可以通过将其设置为 false
来阻止动画自行启动。
direction
参数控制动画播放的方向。它可以具有三个值:normal
、reverse
和 alternate
。默认值为 normal
,它使动画从开始值到结束值正常播放。一旦目标元素达到结束值,如果 loop
值大于 1,目标元素会突然跳回起始值,然后再次开始动画。
当direction
设置为reverse
并且loop
值大于1 时,动画将反转。换句话说,目标元素从最终状态开始动画,然后向后到达初始状态。一旦它们处于初始状态,元素就会跳回到最终状态,然后再次开始反向动画。 alternate
方向值会在每次循环后更改动画方向。
var normalLoop = anime({ targets: '.square', translateY: 250, delay: function(target, index) { return index * 200; }, loop: 4, easing: 'easeInSine', autoplay: false });
在下面的演示中,我将循环次数设置为四,以便您可以轻松注意到不同模式下元素动画的差异。
使用 stagger()
方法
到目前为止,在本教程中,我们已经使用函数将不同的值传递给目标元素的动画延迟或持续时间。您还可以借助 Anime.js 中的 stagger()
方法获得相同的功能。
stagger()
方法基本上允许您控制动画如何在多个元素上发生。它接受两个参数。第一个是您想要应用的值,第二个是一个带有一堆参数的对象,这些参数决定如何应用交错。
下面是一个示例,展示 stagger()
如何与我们到目前为止编写的常规函数进行比较:
// A function to introduce animation delay in elements. delay: function(target, index) { return index * 200; } // The stagger() Equivalent delay: anime.stagger(200);
您现在可能会问是否有一种方法可以反向应用动画延迟,就像我们对函数所做的那样。是的,这绝对是可能的。这是一个例子:
// Reversing the delay direction delay: function(target, index, targetCount) { return (targetCount - index) * 200; } // Equivalent functionality with stagger() delay: anime.stagger(200, {"direction": "reverse"})
我们可以类似地对动画持续时间应用交错。由于交错,前面示例中第一个元素的延迟值被设置为 0,这也是我们想要做的。但是,第一个元素的动画持续时间必须非零。否则,页面加载后就会处于结束阶段。
可以借助 start
参数设置第一个元素的动画的非零持续时间,该参数设置为 1000 以达到惊人效果。这是一个例子:
// Duration starts at 1000 and increases by 800 duration: function(target, index) { return 1000 + index * 800; } // Equivalent functionality with stagger() duration: anime.stagger(800, {"start": 1000})
如果在开始最后一个元素时必须应用非零持续时间值怎么办?在这种情况下,我们可以对 stagger()
方法使用以下参数:
// A non-zero duration in reverse direction duration: function(target, index, targetCount) { return 1000 + (targetCount - index) * 800; } // Equivalent functionality with stagger() duration: anime.stagger(800, {"start": 1000, "direction": "reverse"})
以下 CodePen 演示的所有操作与“基于函数的参数”部分下的示例类似,但它使用 stagger()
方法来执行此操作。正如您所看到的,最终结果没有任何区别。
我想指出的一件事是交错方法在旧版本的库中不起作用。确保您使用的是最新版本以避免任何错误。
最终想法
在本教程中,您了解了可用于控制 Anime.js 中目标元素的动画的不同类型的参数。属性参数用于控制各个属性的动画。
您可以使用它们来控制各个元素的动画播放顺序。函数参数允许您控制单个元素相对于整个组的动画时间和速率。动画参数允许您控制不同元素的动画本身的播放方式。
以上が拡張パラメータ: Anime.js を使用した JavaScript ベースのアニメーション、パート 2の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Microsoft が Windows 11 を発表したとき、多くの変化がもたらされました。変更点の 1 つは、ユーザー インターフェイスのアニメーションの数が増加したことです。一部のユーザーは表示方法を変更したいと考えており、その方法を見つける必要があります。アニメーションがあると、より快適でユーザーフレンドリーな印象になります。アニメーションは視覚効果を使用して、コンピュータをより魅力的に見せ、応答性を高めます。それらの中には、数秒または数分後にスライド メニューが表示されるものもあります。コンピュータには、PC のパフォーマンスに影響を与え、速度を低下させ、作業を妨げる可能性のあるアニメーションが数多くあります。この場合、アニメーションをオフにする必要があります。この記事では、PC 上でアニメーションの速度を向上させるいくつかの方法を紹介します。レジストリ エディターまたは実行するカスタム ファイルを使用して変更を適用できます。 Windows 11 でアニメーションを改善する方法
![PowerPoint でアニメーションが機能しない [修正]](https://img.php.cn/upload/article/000/887/227/170831232982910.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
プレゼンテーションを作成しようとしていますが、アニメーションを追加できませんか? Windows PC 上の PowerPoint でアニメーションが機能しない場合は、この記事が役に立ちます。これは多くの人が不満を抱く一般的な問題です。たとえば、Microsoft Teams でのプレゼンテーション中または画面録画中にアニメーションが停止する場合があります。このガイドでは、Windows 上の PowerPoint で動作しないアニメーションを修正するのに役立つさまざまなトラブルシューティング テクニックを説明します。 PowerPoint アニメーションが機能しないのはなぜですか? Windows 上で PowerPoint のアニメーションが機能しない問題を引き起こす可能性のある考えられる理由として、次のようなことが考えられます。

CSS アニメーション: 要素のフラッシュ効果を実現する方法、具体的なコード例が必要です。Web デザインでは、アニメーション効果がページに優れたユーザー エクスペリエンスをもたらすことがあります。グリッター効果は、要素をより目を引くようにできる一般的なアニメーション効果です。 CSSを使って要素のフラッシュ効果を実現する方法を紹介します。 1. フラッシュの基本的な実装 まず、フラッシュ効果を実現するには、CSS のアニメーション プロパティを使用する必要があります。アニメーション属性の値には、アニメーション名、アニメーション実行時間、アニメーション遅延時間を指定する必要があります。

私たちは日々の仕事で ppt をよく使用しますが、ppt のすべての操作機能に精通していますか?例: ppt でアニメーション効果を設定する方法、切り替え効果を設定する方法、各アニメーションの効果時間はどれくらいですか?各スライドは自動的に再生されますか、ppt アニメーションの開始と終了などはできますか? 今回は、まず ppt アニメーションの開始と終了の具体的な手順を共有します。以下にあります。友達、見に来てください。見て! 1. まず、コンピューターで ppt を開き、テキスト ボックスの外側をクリックしてテキスト ボックスを選択します (下図の赤い丸で示されているように)。 2. 次に、メニューバーの[アニメーション]をクリックし、[消去]効果を選択します(図の赤丸部分)。 3. 次に、[

当サイトは1月26日、国産3Dアニメ映画『エル・ランシェン:深海竜』が最新スチールを公開し、7月13日に公開されると正式に発表したと報じた。 「Er Lang Shen: The Deep Sea Dragon」は、Mihuxing (Beijing) Movie Co., Ltd.、Horgos Zhonghe Qiancheng Film Co., Ltd.、Zhejiang Hengdian Film Co., Ltd.、Zhejiang Gongying Film によって制作されていることがわかります。 Tianhuo Technology Co., Ltd.とHuawen Image (Beijing) Film Co., Ltd.が制作し、Wang Junが監督したこのアニメーション映画は、当初、2022年7月22日に中国本土で公開される予定でした。 。このサイトのあらすじ:授与神の戦いの後、蒋子耶が神々を分割するために「授与神リスト」を持ち出し、授与神リストは天宮によって九州の深海に封印された秘密の領域。実は、授与神リストには神職以外にも強力な悪霊が数多く封印されている。

Vue を使用してタイプライター アニメーションの特殊効果を実装する方法 タイプライター アニメーションは、Web サイトのタイトル、スローガン、その他のテキスト表示でよく使用される、一般的で目を引く特殊効果です。 Vue では、Vue カスタム命令を使用してタイプライター アニメーション効果を実現できます。この記事では、Vue を使用してこの特殊効果を実現する方法を詳しく紹介し、具体的なコード例を示します。ステップ 1: Vue プロジェクトを作成する まず、Vue プロジェクトを作成する必要があります。 VueCLI を使用して新しい Vue プロジェクトをすばやく作成することも、手動で作成することもできます。

Microsoft Windows 11 には、多くの新機能が含まれています。ユーザーインターフェイスが更新され、いくつかの新しいエフェクトも導入されました。デフォルトでは、アニメーション効果はコントロールやその他のオブジェクトに適用されます。これらのアニメーションを無効にする必要がありますか? Windows 11 には視覚的に魅力的なアニメーションとフェード効果が備わっていますが、特定のタスクに多少の遅れが生じるため、一部のユーザーにとってはコンピューターが遅く感じる場合があります。アニメーションをオフにして、応答性の高いユーザー エクスペリエンスを実現するのは簡単です。オペレーティング システムに加えられたその他の変更を確認した後、Windows 11 でアニメーション効果をオンまたはオフにする方法を説明します。方法についての記事もあります

Netflix のクレイメーション映画「チキン ラン 2」の最終予告編が公開されました。映画は 12 月 15 日公開予定です。当サイトは、「チキン ラン 2」の予告編にチキン ロキとキングコングが映っていることに気づきました。ジェイは作戦を開始します。娘のモリーを探すために。モリーはファンランド・ファームでトラックに連れ去られ、ロッキーとジンジャーは命がけで娘を取り戻そうとする。この映画はサム・フェールが監督し、サンディ・ウェイ・ニュートン、ザカリー・リーヴァイ、ベラ・ラムジー、イメルダ・スタウントン、デヴィッド・ブラッドリーが出演する。 『チキンラン2』は『チキンラン』の20年以上ぶりの続編であることが分かりました。最初の作品は、2001 年 1 月 2 日に中国で公開されました。この作品は、鶏肉工場でチキンパイに変えられる運命に直面するニワトリのグループの物語です。
