推薦JavaScript動態效果庫

来源:https://www.cnblogs.com/ikumi/archive/2019/08/09/11329234.html
-Advertisement-
Play Games

翻譯:瘋狂的技術宅,原文:https://blog.bitsrc.io/11-javascript-animation-libraries-for-2018-9d7ac93a2c59 當我想要在網上找一個簡潔的 Javascript 動效庫時,總是發現很多“推薦”的庫都是缺乏持續維護的。 經過一番研 ...


翻譯:瘋狂的技術宅,原文:https://blog.bitsrc.io/11-javascript-animation-libraries-for-2018-9d7ac93a2c59

 

當我想要在網上找一個簡潔的 Javascript 動效庫時,總是發現很多“推薦”的庫都是缺乏持續維護的。

經過一番研究,我收集了 11 個最好的庫,你可以用在自己的項目中。另外我還添加了一些有用但是缺少持續維護的庫。

提示:可以用 Bit 來共用你的組件,用它們構建多個項目並與你的團隊同步更改。不要重覆造輪子。

這裡有一些  React spinners(https://bitsrc.io/davidhu2000/react-spinners):

上面的每個組件都可以在站點上找到並測試,可以直接用在自己的項目中。

使用純CSS

在深入研究這些庫之前,不要忘記還有純 CSS。為什麼?因為它是標準的,可以提高性能(GPU),能夠提供很好的向後和向前相容性,它可能是創建動態效果的最有效方式。

1. Three.js

得到超過 43K 的star,這個流行的庫是在瀏覽器上創建 3D 動畫的最好的一種方式,它用了 WebGL 。通過提供<canvas><svg>、CSS3D 和 WebGL 渲染器,該庫可以讓我們跨設備和瀏覽器創建豐富的互動式體驗。該庫於 2010 年 4 月首次推出,目前仍有近 1000 名參與者開發。

github: https://github.com/mrdoob/three.js/

2. Anime.js

超過20K的 star,Anime 是一個 JavaScript 動畫庫,可以處理 CSS 屬性、單個 CSS 轉換、SVG或任何DOM屬性,以及 JavaScript 對象。這個庫允許你鏈接多個動畫屬性、對多個實例進行同步、創建時間軸等。

github:https://github.com/juliangarnier/anime

3. Mo.js

這個庫有 14K 的 star,是一個用於 Web 的動態圖形工具集,有簡單的聲明性 API、跨設備相容性和超過 1500 個單元測試。你可以在 DOME 或 SVG DOME 周圍移動你創建的圖形或創建唯一的 mo.js 對象。儘管文檔有些欠缺,但是示例還是很豐富的,這裡有mo.js 的 CSS 技巧的介紹(https://css-tricks.com/introduction-mo-js/)。

github:https://github.com/legomushroom/mojs

4. Velocity

 

查看codepen上的演示:https://codepen.io/hone/pen/azRzbe

有 15K 的 star,Velocity 是一個快速的 Javascript 動畫引擎,有與jQuery的 $.animate(). 相同的API。它具有顏色動畫、變換、迴圈、漸變、SVG支持和滾動。這是 Velocity 高性能引擎的細分(https://www.sitepoint.com/incredibly-fast-ui-animation-using-velocity-js/),這是使用該庫的SVG動畫的簡介(https://davidwalsh.name/svg-animation)。

github:https://github.com/julianshapiro/velocity

5. Popmotion

有 14K 的star,這個庫只有 11kb 的大小。它允許開發人員從動作創建動畫和交互,動作是可以啟動和停止的值的流,並使用CSS、SVG、React、three.js 和任何接受數字作為輸入的 API 創建。

github:https://github.com/Popmotion/popmotion

6. Vivus

超過10K的star,Vivus 是一個零依賴 JavaScript 類,可以讓你製作 SVG 動畫,讓它們具有能夠被繪製的外觀。有很多動畫模版可以用,也可以創建自定義腳本來繪製 SVG。不妨親自去 Vivus-instant (https://maxwellito.github.io/vivus-instant/)看一看實例。

github:https://github.com/maxwellito/vivus

7. GreenSock JS

GSAP 是一個 JavaScript 庫,用於創建高性能、零依賴性、跨瀏覽器的動畫,其聲稱有超過400萬個網站在使用。 GSAP 非常靈活,可以與React、Vue、Angular 和 原生 JS 一起使用。 GSDevtools (https://greensock.com/gsdevtools)可以幫助你修改用 GSAP 構建的動畫。

github:https://github.com/greensock/GreenSock-JS

8. Scroll Reveal

憑藉15K 的star 和零依賴關係,該庫為 Web 和移動瀏覽器提供了簡單的滾動動畫,能夠以動畫的方式顯示滾動內容。它支持多種簡潔的效果,甚至可以讓你使用自然語言去定義動畫。這是一個簡短的SitePoint教程(https://www.sitepoint.com/revealing-elements-scrollreveal-js/)。

github:https://github.com/jlmakes/scrollreveal

9. Hover (CSS)

嗯,這是一個 CSS 庫。獲得了 20K 的 star,Hover 提供了 CSS3 的強大懸停效果,可用於鏈接、按鈕、徽標、SVG 和圖像等,能在CSS、Sass和LESS中使用。你可以找到要在自己的樣式表中使用的效果並簡單的複製粘貼,或者去引用樣式表。

github:https://github.com/IanLunn/Hover

10. Kute.js

一個完全成熟的原生 JavaScript 動畫引擎,具有跨瀏覽器動畫的基本功能。不過重點還是代碼質量、靈活性、性能和大小(其核心引擎只有17k 大小,壓縮包僅 5.5k)。這裡是演示(http://thednp.github.io/kute.js/performance.html)。該庫也是可擴展的(http://thednp.github.io/kute.js/features.html#performance),因此你可以添加自己的功能。

github:https://github.com/thednp/kute.js/

11. Typed.js

這個有6K star 的庫的基本功能是能讓你以選定的速度創建一個打字動畫。你還可以在頁面上放置一個用戶不可見的 <div> 標簽並從中讀取你要輸出的內容,並能方便搜索引擎抓取。這個庫非常流行而且充滿新意。

github:https://github.com/luisvinicius167/ityped
另外還有iTyped:https://github.com/luisvinicius167/ityped

 

 本人除了做前端開發,還在公眾號寫點文章,歡迎用共同興趣愛好的朋友關註下,交個朋友噢!

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 實時流式計算,也就是RealTime,Streaming,Analyse,在不同的領域有不同的定義,這裡我們說的是大數據領域的實時流式計算。 實時流式計算,或者是實時計算,流式計算,在大數據領域都是差不多的概念。那麼,到底什麼是實時流式計算呢? 谷歌大神Tyler Akidau在《the world ...
  • 每一個 Gradle 構建都會按照相同的順序經歷三個不同的階段:初始化、配置、執行。 ...
  • 1. 多線程的底層實現? 2. 線程間怎麼通信? 3. 網路圖片處理問題中怎麼解決一個相同的網路地址重覆請求的問題? 4. 用NSOpertion和NSOpertionQueue處理A,B,C三個線程,要求執行完A,B後才能執行C,怎麼做? 5. 列舉cocoa中常見對幾種多線程的實現,並談談多線程 ...
  • 初步認為應該是與熱點名稱的位元組數有關。 然後開始查看源碼。 /Settings/res/xml/tether_prefs.xml 中的 發現了熱點設置界面在HotspotSettings 裡面, 在HotspotSettings中點擊設置wifi熱點,進入/Settings/src/com/andr ...
  • Android上已經自動對鍵盤遮擋輸入框做了處理,所以我們只需要關註ios。 1.首先引入 KeyboardAvoidingView 2.然後在頁面的最外層加上 KeyboardAvoidingView 如果適配ios和Android,可以將頁面提取出來 ...
  • 菜鳥入坑記——第一篇 關鍵字:AlarmManager 一、AlarmManager簡介: 參考網址:https://www.jianshu.com/p/8a2ce9d02640 參考網站:https://www.runoob.com/w3cnote/android-tutorial-alarmma ...
  • 在html中使用css的三種方式: 1、行內樣式:同過元素的style屬性來設置 屬性之間分號隔開。 2、內部樣式:在<head>的<style>元素中定義css樣式 3、外部樣式:在css文件中定義css樣式,然後在html的<head>中通過<style>引入外部樣式表 css文件中不加<sty ...
  • 在電腦科學中,樹是一種十分重要的數據結構。樹被描述為一種分層數據抽象模型,常用來描述數據間的層級關係和組織結構。樹也是一種非順序的數據結構。下圖展示了樹的定義: 在介紹如何用JavaScript實現樹之前,我們先介紹一些和樹相關的術語。 如上圖所示,一棵完整的樹包含一個位於樹頂部的節點,稱之為根節 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...