使用Greensock插件解鎖令人驚嘆的Web動畫:深度潛水
>本教程探索了Greensock(GSAP)功能強大的插件,與傳統的CSS或SMIL相比,為複雜的Web動畫提供了簡化的方法。 我們將介紹關鍵插件,並演示如何有效地實現專業級別的結果。
>
本分期付款專注於幾個特殊的GSAP插件:
>
沿預定義的路徑(彎曲,曲折等)動畫對象增加了現實主義。儘管SMIL已過時並且CSS支持受到限制,但BezierPlugin提供了強大的跨瀏覽器解決方案。 這是一個免費的插件。
對於眾多坐標,將它們緩存到一個變量中:
>使用'x'和'y'坐標相對於元素當前位置的位置。
> bezierplugin提供(坐標充當磁鐵)和
>(默認情況下,用於路徑張力)。<code class="language-javascript">TweenMax.to(document.getElementById('myDiv'), 5, { bezier:[ {left:100, top:250}, {left:300, top:0}, {left:500, top:400} ], ease:Power1.easeInOut });</code>>沿路徑旋轉元素。 codepen演示說明了這些屬性。
<code class="language-javascript">const points = [ /* ... your points */ ]; TweenMax.to(document.getElementById('myDiv'), 5, { bezier: points, ease:Power1.easeInOut });</code>請參閱Codepen demo
type: 'soft'
> Greensock Premium插件和實用程序type: 'thru'
curviness
>
autoRotate: true
雖然Tweenmax提供了很多,但俱樂部Greensock會員資格解鎖了高級插件和公用事業。 令人震驚的綠色會員資格可以訪問下載這些資源。 但是,Codepen演示允許在Codepen環境中使用高級插件免費實驗。
>拖動和掉落與拖放和投擲propsplugin
拖放簡化了拖放動畫,提供跨瀏覽器的兼容性,觸摸屏支持和性能。 ThrowPropsPlugin增加了基於物理的滑行。
>基本實現:
<code class="language-javascript">TweenMax.to(document.getElementById('myDiv'), 5, { bezier:[ {left:100, top:250}, {left:300, top:0}, {left:500, top:400} ], ease:Power1.easeInOut });</code>
用bounds
約束運動,並啟用throwProps
>
<code class="language-javascript">const points = [ /* ... your points */ ]; TweenMax.to(document.getElementById('myDiv'), 5, { bezier: points, ease:Power1.easeInOut });</code>
>使用type: 'x'
(水平)或type: 'y'
啟用旋轉拖動。 type: 'rotation'
drawsvgplugin
getTotalLength()
基本用法:
確保您的SVG具有定義的中風(在SVG或CSS中)。 使用GSAP的交錯方法交錯多個筆觸。
<code class="language-javascript">Draggable.create('#yourID');</code>請參閱Codepen demo>用變形的形狀移動
>變形的變形,即使有不同的點計數,一個SVG形狀也會變成另一種SVG。 簡單用法:
您可以直接提供路徑數據或用於簡單形狀的
。 請參閱Codepen demo<code class="language-javascript">Draggable.create('#yourID', { bounds: '.container', throwProps: true });</code>
MorphSVGPlugin.convertToPath()
的有趣文本效果 分佈版將文本分為目標動畫的線條,單詞或字符。 基本用法:
在動畫之後刪除添加的標記。
請參閱Codepen demo<code class="language-javascript">TweenLite.fromTo("#path", 1, { drawSVG:"0 5%" }, { drawSVG:"95% 100%" });</code>
split.lines
split.words
結論split.chars
split.revert()
Greensock的插件
以上是精美的網絡動畫使用Greensock插件變得容易的詳細內容。更多資訊請關注PHP中文網其他相關文章!