>本文介紹了朱利安·夏皮羅(Julian Shapiro)的高性能JavaScript動畫庫Velocity.js,展示了其功能而不依賴JQuery。 這是探索CSS以外的動態DOM動畫庫的系列中的第三個。 以前的文章涵蓋了Anime.js和Kute.js.
> velocity.js的關鍵特徵:
>> velocity.js是為CSS屬性,轉換,SVG和滾動事件動畫的強大工具,都在Vanilla JavaScript中。 它的靈活的API類似於JQuery's,提供了循環,延遲,緩解選項(包括春季物理學)和持續時間控制等功能。 forceFeeding允許精確定義動畫開始和結束值。 此外,它提供了對動畫序列的控制(停止,暫停,逆轉,恢復)。 速度UI包通過預構建的效果和自定義動畫創建擴展功能。
動畫元素:$.animate()
>數字CSS屬性(包括顏色)
變換
選項:translateX
translateY
>(毫秒)
duration
(無限的重複次數或easing
loop
true
>請參閱完整選項列表的速度文檔。 delay
語法:>>),它在無jQuery的情況下完美地發揮了功能。 基本語法是:
>鏈接動畫:
動畫多個元素:$.animate()
$.velocity()
<code class="language-javascript">Velocity(element, {property: value}, {option: optionValue});</code>,
,
,<code class="language-javascript">Velocity(element1, {property: value}, {option: optionValue}); Velocity(element1, {property: value}, {option: optionValue});</code>,
,
,const elements = document.querySelectorAll('<div>'); Velocity(elements, {property: value}, {option: optionValue});)。 如果省略了速度侵入單位(通常<p>)。 還支持相對數學(<code>px
,%
,rem
,em
)。vw/vh
>deg
px
> forcefeeding:=
-=
而不是依靠velocity.js檢索初始值,而是使用forceFeeding:> <code class="language-javascript">Velocity(element, {property: value}, {option: optionValue});</code>陣列包含:最終值,可選的寬鬆和啟動值。
> 動畫控件:
控制動畫> >使用:
Velocity(elem, 'stop');
Velocity(elem, 'pause');
Velocity(elem, 'reverse');
Velocity(elem, 'resume');
然後,該文章提供了幾個演示(落球,按鈕控制的彈跳球,滾動動畫,SVG動畫以及使用速度UI包),以說明這些概念。 每個演示的代碼可通過文章中的Codepen鏈接獲得。 最後,本文以FAQ部分結束,涉及常見速度。 JS使用問題,包括無jQuery的使用。 本文還包括有關進一步學習的其他資源的部分。
以上是使您的網站與velocity.js(無jQuery)進行互動和樂趣的詳細內容。更多資訊請關注PHP中文網其他相關文章!