JavaScript資源大全中文版(Awesome最新版)

来源:http://www.cnblogs.com/best/archive/2016/10/08/5909023.html
-Advertisement-
Play Games

Awesome系列的JavaScript資源整理。awesome-javascript是sorrycc發起維護的 JS 資源列表,內容包括:包管理器、載入器、測試框架、運行器、QA、MVC框架和庫、模板引擎、數據可視化、時間軸、編輯器等。 前端MVC 框架和庫 angular.js:為網路應用增強 ...


Awesome系列的JavaScript資源整理。awesome-javascript是sorrycc發起維護的 JS 資源列表,內容包括:包管理器、載入器、測試框架、運行器、QA、MVC框架和庫、模板引擎、數據可視化、時間軸、編輯器等。

前端MVC 框架和庫

  • angular.js:為網路應用增強 HTML。官網
  • aurelia:一個適用於移動設備、桌面電腦和 web 的客戶端 JavaScript 框架。官網
  • backbone:給你的 JS 應用加入帶有 Models、Views、Collections 和 Events 的 Backbone。官網
  • batman.js:最適合 Rails 開發者的 JavaScript 框架。官網
  • ember.js:一個旨在創建非凡 web 應用的 JavaScript 框架。官網
  • meteor:一個超簡單的、資料庫無處不在的、只傳輸數據的純 JavaScript web 框架。官網
  • ractive:新一代 DOM 操作。官網
  • vue:一個用於構建可交互界面的、直觀快速和可組合的 MVVM 框架。官網 
  • knockout:Knockout 用 JavaScript 讓創建響應式的富 UI 更加容易。官網 
  • spine:構建 JavaScript 應用的輕量 MVC 庫。官網
  • espresso.js:一個極小的、用於製作用戶界面的 JavaScript 庫。官網
  • canjs:讓 JS 更好、更快、更簡單。官網
  • react:用於建構用戶界面的庫。它是聲明式的、高效的和極度靈活的,並使用虛擬 DOM 作為其不同的實現。官網
  • react-native:一個用 React 構建原生應用的框架。官網
  • riot:類 React 庫,但很輕量。官網
  • thorax:加強你的 Backbone。官網
  • chaplin:使用 Backbone.js 庫的 JavaScript 應用架構。官網
  • marionette:一個 Backbone.js 的複合應用程式庫,旨在簡化大型 JavaScript 應用結構。官網
  • ripple:一個小巧的、用於構建響應界面的基礎框架。官網
  • rivets:輕量卻擁有強大的數據綁定和模板解決方案官網
  • derby:讓編寫實時和協同應用更簡單的 MVC 框架,能夠在 Node.js 和瀏覽器同時運行。官網
    • derby-awesome:很棒的 derby 組件集合。官網
  • way.js:簡單、輕量、持久化的雙向數據綁定。官網
  • mithril.js:Mithril 是一個客戶端 MVC 框架(輕量、強大和快速)官網
  • jsblocks:jsblocks 是一個更好的 MV-ish 框架。官網
  • LiquidLava:易懂的、用於構建用戶界面的 MVC 框架。官網

包管理器

管理著 javascript 庫,並提供讀取和打包它們的工具。

  • npm:npm 是 javascript 的包管理器。官網
  • Bower:一個 web 應用的包管理器。官網
  • component:能構建更好 web 應用的客戶端包管理器。官網
  • spm:全新的靜態包管理器。官網
  • jam:一個專註於瀏覽器端和相容 RequireJS 的包管理器。官網
  • jspm:流暢的瀏覽器包管理器。官網
  • Ender:沒有庫文件的程式庫。官網
  • volo:以項目模板、添加依賴項與自動化生成的方式創建前端項目。官網 
  • Duo:一個整合 Component、Browserify 和 Go 官網的最佳思想,使開發者能快速方便地組織和編寫前端代碼的下一代包管理器。

載入器

JavaScript 的模塊或載入系統。

  • RequireJS:JavaScript 文件和模塊的載入器。官網
  • browserify:在瀏覽器端以 node.js 的方式 require()。官網
  • SeaJS:用於 Web 的模塊載入器。官網
  • HeadJS:HEAD 的唯一腳本。官網
  • curl:小巧、快速且易擴展的模塊載入器,它能處理 AMD、CommonJS Modules/1.1、CSS、HTML/text 和歷史腳本。官網
  • lazyload:小巧且無依賴的非同步 JavaScript 和 CSS 載入器。官網
  • script.js:非同步 JavaScript 載入器和依賴管理器。官網
  • systemjs:AMD、CJS(commonJS) 和符合 ES6 規範的模塊載入器。官網
  • LodJS:基於 AMD 的模塊載入器。官網
  • ESL:瀏覽器端的模塊載入器,支持延遲定義和 AMD。官網
  • modulejs:輕量的 JavaScript 模塊系統。官網

打包工具

  • browserify :Browserify 讓你能在瀏覽器端使用 require('modules') ,打包所有依賴。官網
  • webpack:為瀏覽器打包 CommonJs/AMD 模塊。官網

測試框架

框架

  • mocha:適用於 node.js 和瀏覽器、簡易、靈活、有趣的 JavaScript 測試框架。官網
  • jasmine:簡單無 DOM 的 JavaScript 測試框架。官網
  • qunit:一個易於使用的 JavaScript 單元測試框架。官網
  • jest:簡單的 JavaScript 單元測試框架。官網
  • prova:基於 Tape 和 Browserify 的測試運行器,它適用於 Node & 瀏覽器。官網
  • DalekJS:自動化且跨瀏覽器的 JavaScript 功能測試框架。官網

斷言

  • chai:適用於 node.js 和瀏覽器的 BDD / TDD 斷言框架,並能搭配其它測試框架使用。官網
  • Sinon.JS:對 JavaScript 進行 spies、stubs 和 mock 測試。官網
  • expect.js:簡約的、適用於 Node.js 和瀏覽器端的 BDD 式斷言工具。官網
  • should.js:適用於 Node.js 的 BDD 式斷言工具。官網

覆蓋率

  • istanbul:另一個 JS 代碼覆蓋率檢測工具。官網
  • blanket:一個簡單的代碼覆蓋率檢測庫。它的設計理念是易於安裝和使用,且可用於瀏覽器端和 node.js。官網
  • JSCover:JSCover 是一個檢測 JavaScript 程式代碼覆蓋率的工具。官網

運行器

  • phantomjs:腳本化的 Headless WebKit。官網
  • slimerjs:一個內核為 Gecko 的類似 PhantomJS 工具。官網
  • casperjs:基於 PhantomJS 和 Slimer JS 的導航腳本和測試工具。官網 
  • zombie:基於 node.js 、快速、全棧且無圖形界面的瀏覽器的測試工具。官網
  • totoro:一個簡單可靠且能跨瀏覽器運行的測試工具。官網
  • karma:一個優秀的的 JavaScript 測試運行器。官網
  • nightwatch:基於 node.js 和 selenium webdriver 的圖形界面自動化測試框架。官網
  • intern:下一代 JavaScript 代碼測試棧。官網
  • yolpo:在瀏覽器逐句執行的 JavaScript 解釋器。官網

QA 工具

  • JSHint:JSHint 是一個有助於發現 JavaScript 代碼錯誤和潛在問題的工具。官網
  • jscs:JavaScript 代碼風格檢測工具。官網
  • jsfmt:格式化、搜索和改寫 JavaScript。官網
  • jsinspect:檢測複製粘貼和結構類似的代碼。官網
  • buddy.js:發現 JavaScript 代碼里的 魔術數字官網
  • ESLint:完全插件化的工具,能在 JavaScript 中識別和記錄模式。官網
  • JSLint :高標準、嚴格和固執的代碼質量工具,旨在只保持語言的優良部分。官網

基於 Node 的 CMS 框架

  • KeystoneJS:強大的 CMS 和 web 應用框架。官網
  • Reaction Commerce:擁有實時的架構和設計的響應式(reactive) CMS。官網
  • Ghost:簡單、強大的發佈平臺。官網
  • Apostrophe:提供內容編輯和基本服務的 CMS。官網
  • We.js:適用於實時應用、網站或博客的框架。官網
  • Hatch.js:擁有社交特性的 CMS 平臺。官網
  • TaracotJS:擁有快速、極簡風格特點且基於Node.js 的 CMS。官網
  • Nodizecms:為 CoffeeScript 愛好者準備的 CMS。官網
  • Cody:擁有所見即所得的編輯器的 CMS。官網
  • PencilBlue:CMS 和博客平臺。官網

模板引擎

模板引擎允許您執行字元串插值。

  • mustache.js:是 JavaScript 中帶有 {{mustaches}} 的最簡模板。官網
  • handlebars.js:是 Mustache 模板語言的擴展。官網
  • hogan.js:是 Mustache 模板語言的編譯器。官網
  • doT:最快速簡潔的 JavaScript 模板引擎,適用於 nodejs 和瀏覽器。官網
  • dustjs:適用於瀏覽器和 node.js 的非同步模板。官網
  • eco:嵌入式的 CoffeeScript 模板。官網
  • JavaScript-Templates:輕量(小於 1KB)、快速且無依賴的強大 JavaScript 模版引擎。官網
  • t.js:小巧的 JavaScript 模板框架,壓縮後約為 400 位元組。官網
  • Jade:健壯的、優雅且功能豐富的 nodejs 模板引擎。官網
  • EJS:高效的 JavaScript 模板。官網
  • xtemplate:可擴展的模板引擎,適用於 node 和瀏覽器。官網
  • marko:快速輕量且基於 HTML 的模板引擎,支持非同步、流、自定義標簽和 CommonJS 模編譯後輸出。適用於 Node.js 官網和瀏覽器。

數據可視化

Web 數據可視化工具

  • d3:一個對 HTML 和 SVG 進行可視化的 JavaScript 庫。官網
  • metrics-graphics:更簡潔和擁有更規範的數據圖表佈局優化演算法的庫。官網
  • pykcharts.js:經過精心設計後,去除 d3.js 複雜性的 d3.js 圖表庫。官網
  • three.js:JavaScript 3D 庫。官網
  • Chart.js:簡單的、基於 canvas 標簽的 HTML5 圖表庫。官網
  • paper.js:是矢量圖形腳本中的瑞士軍刀 —— 使用 HTML5 Canvas 將 Scriptographer  移植到 JavaScript 官網和瀏覽器。
  • fabric.js:JavaScript Canvas 庫,SVG 與 Canvas 可以相互解析。官網
  • peity:進度條、線狀和餅狀圖。官網
  • raphael:JavaScript 矢量庫。官網
  • echarts:商業產品圖表。官網
  • vis:動態的、基於瀏覽器的可視化庫。官網
  • two.js:一個渲染器無關的適用於 web 的二維繪圖 api 。官網
  • g.raphael:基於 Raphaël 圖表庫。官網
  • sigma.js:一個致力於圖形繪畫的 JavaScript 庫。官網
  • arbor:一個使用 web workers 和 jQuery 的圖形可視化庫。官網
  • cubism:可視化時間序列的 D3 插件。官網
  • dc.js:與 crossfilter 無縫合作的多維圖表繪製庫,使用 d3.js 渲染。官網
  • vega:一套可視化語法。官網
  • processing.js:Processing.js 基於 Web 標準使數據可視化,而無需任何插件。官網
  • envisionjs:動態的 HTML5 可視化。官網
  • rickshaw:用於構建互動式實時圖表的 JavaScript 工具包。官網
  • flot:吸引人的、基於 jQuery 的 JavaScript 圖表庫。官網
  • morris.js:漂亮的時間序列線框圖。官網
  • nvd3:一個為 D3.js 構建可復用圖表和圖表組件的庫。官網
  • svg.js:一個輕量的、用於操作和添加 SVG 動畫的庫。官網
  • heatmap.js:基於 HTML5 canvas 的熱力圖 JavaScript 庫。官網
  • jquery.sparkline:一個直接在瀏覽器端生成小型走勢圖的 jQuery 插件。官網
  • xCharts:一個基於 D3、用於構建自定義圖表和圖形的庫。官網
  • trianglify:基於 d3.js 的低多邊形(low poly)風格背景圖片生成器。官網
  • d3-cloud:創建詞雲(word cloud)效果的 JavaScript 庫。官網
  • d4:一個基於 D3 、友好、可復用的 DSL 圖表庫 。官網
  • dimple.js:基於 d3 的簡易商業分析圖表庫。官網
  • chartist-js:簡單的響應式圖表。官網
  • epoch:一個通用的實時圖表庫。官網
  • c3:基於 D3 的可復用圖表庫。官網
  • BabylonJS:一個運用 HTML5 和 WebGL 構建 3D 游戲的框架。官網

也有一些很棒的收費庫,如 amchartplotly 和 highchart

時間軸

  • TimelineJS: 一個用 JavaScript 編寫的可敘事時間軸庫。官網
  • timesheet.js:用於構建簡單的 HTML5 & CSS3 時間表的 JavaScript 庫。官網

編輯器

  • ace:Ace(Ajax.org Cloud9 Editor)。官網
  • CodeMirror:瀏覽器端的代碼編輯器。官網
  • esprima:用於綜合分析的 ECMAScript 解析器。官網
  • quill:一個帶有 API 的跨瀏覽器富文本編輯器。(官網)
  • medium-editor:Medium.com 所見即所得編輯器的克隆版。官網
  • pen:享受線上編輯(支持 markdown)。官網
  • jquery-notebook:一個易用的、簡潔優雅的文本編輯器。靈感來源於 Medium 的魅力。官網
  • bootstrap-wysiwyg:小巧的、相容 bootstrap 的所見即所得的富文本編輯器。官網
  • ckeditor-releases:適用於每個人的 web 文本編輯器。官網
  • editor:一個 markdown 編輯器,但仍在開發中。官網
  • EpicEditor:一個可嵌入的 JavaScript Markdown 官網的編輯器,擁有全屏編輯、即時預覽、自動保存草稿和離線支持等功能。
  • jsoneditor:查看、編輯和格式化 JSON 的 web 工具。官網
  • vim.js: 擁有持久化 ~/.vimrc 的 Vim 編輯器的 JavaScript 移植版本。官網
  • Squire:HTML5 富文本編輯器。官網
  • TinyMCE:JavaScript 富文本編輯器。官網
  • trix:由 Basecamp 製作,適用於每天寫作的富文本編輯器。官網

文件

處理文件的庫。

  • Papa Parse:一款強大的 CSV 庫,支持解析 CSV 文件/字元串,也能導出 CSV。官網
  • jBinary:對用聲明式語法描述文件類型和數據結構的二進位文件,進行高級 I/O(載入、解析、操作、序列化、存儲)操作。官網

函數式編程

函數式編程庫擴展了 JavaScript 的能力。

  • underscore:JavaScript 的實用工具。官網
  • lodash:提供一致性、可定製、高性能和額外功能的實用庫。官網
  • Sugar:一個擴展了原生對象功能的 JavaScript 庫。官網
  • lazy.js:類似 Underscore,但性能更優越官網
  • ramda:一個針對 JavaScript 程式員的實用函數庫。官網
  • mout:模塊化的 JavaScript 工具庫。官網
  • mesh:流數據同步工具。官網

響應式編程

響應式程式庫擴展了 JavaScript 的能力。

  • RxJs:對 JavaScript 進行響應式擴展。官網
  • Bacon:JavaScript 的 FPR(函數式響應式編程)庫。官網
  • Kefir:受 Bacon.js 和 RxJS 啟發的 FRP 庫,專註於高性能和低記憶體消耗。官網
  • Highland:對 JavaScript 實用工具的重新思考,Highland 能輕易地管理同步和非同步信息,而且僅使用標準 JavaScript 和類 Node 流。官網
  • Most.js:高性能 FRP 庫。官網

數據結構

數據結構庫用於構建一個更複雜的應用。

  • immutable-js:不可變的數據集合,包括 Sequence、Range、Repeat、Map、OrderedMap、Set 和 sparse Vector。官網
  • mori:使用 ClojureScript 持久化數據結構和支持原生 JavaScript API 的庫。官網
  • buckets:完整的、經過充分測試和記錄數據結構的 JavaScript 庫。官網
  • hashmap:簡單的 hashmap 實現,支持任何類型的鍵值。官網

日期

日期庫。

  • moment:解析、驗證、操作和顯示日期。官網
  • moment-timezone:基於 moment.js 的時區庫。官網
  • jquery-timeago:一款支持自動更新模糊時間戳的 jQuery 插件(如:"4 分鐘之前")。官網
  • timezone-js:讓 JavaScript Date 對象擁有時區功能。使用 Olson zoneinfo 文件記錄著時區數據。官網
  • date:擁有人性化的 Date() 方法。官網
  • ms.js:小巧的毫秒轉換工具。官網

字元串

字元串庫。

  • selecting:一個允許你獲取用戶選定文本的庫。官網
  • underscore.string:擴展了 Underscore.js 的字元串操作。官網
  • string.js:額外的 JavaScript 字元串方法。官網
  • he:健壯的 HTML 實體編碼/解碼器。官網
  • multiline:多行字元串。官網
  • query-string:解析和字元串化 URL 查詢字元串。官網
  • URI.js:URL 操作庫。官網 
  • jsurl:輕量的 URL 操作庫。官網
  • sprintf.js:實現字元串格式化。官網
  • url-pattern:讓 url 和其它字元串進行比正則表達式匹配更簡單。字元串和數據可相互轉化。官網

數字

  • Numeral-js:對數字進行格式化和操作的庫。官網
  • odometer:流暢的數字過渡效果。官網
  • accounting.js:對數字、金錢、貨幣進行格式化的輕量庫——完全本地化和無依賴。官網
  • money.js:一個小巧(1kb)的貨幣轉換庫,適用於 web 和 nodeJS。官網
  • Fraction.js:一個有理數庫。官網
  • Complex.js: 一個複數庫。官網
  • Polynomial.js:一個多項式庫。官網

存儲

  • store.js:為所有瀏覽器封裝了 LocalStorage,而沒有使用 cookies 和 flash。隱秘地使用 localStorage、globalStorage 和用戶數據。官網
  • localForage:改善後的離線存儲。其封裝了 IndexedDB、WebSQL 和 localStorage,擁有操作簡單和強大的 API。官網
  • jStorage:jStorage 是一個簡單的鍵值對資料庫,用於在瀏覽器端存儲數據。官網
  • cross-storage:獲得許可權後,能跨功能變數名稱本地存儲。官網
  • basket.js:用 localStorage 載入和緩存腳本的資源載入器。官網
  • bag.js:可以緩存腳本和載入資源,與 basket.js 相似,但增加了鍵值對介面和對 localStorage / websql / 官網undexedDB 的支持。
  • basil.js:智能的 JavaScript 數據持久層庫。官網
  • jquery-cookie:輕量簡單的、用於讀取、編輯和刪除 cookie 的 jQuery 插件。官網
  • Cookies:客戶端 Cookie 操作庫。官網
  • DB.js:基於 Promise 的、封裝了 IndexDB 的庫。官網
  • lawnchair.js:簡單的客戶端 JSON 存儲。官網

顏色

  • randomColor:JavaScript 顏色生成器。官網
  • chroma.js:擁有各種各樣顏色操作的 JavaScript 庫。官網
  • color:JavaScript 顏色轉換和操作庫。官網
  • colors:更智能的預設 web 顏色。官網
  • PleaseJS:隨機創建出賞心悅目的顏色和配色方案。官網
  • TinyColor:快速、輕巧的顏色操作和轉換庫。官網
  • Vibrant.js:從圖像提取主要顏色。官網

國際化和本地化(I18n And L10n)

本地化和國際化 JavaScript 庫

  • i18next:JavaScript 最簡單的國際化(i18n)方法。官網
  • polyglot:小巧的國際化助手庫。官網
  • babelfish:i18n 提供友好易懂的 API ,並且內置多種支持。官網

  • ClassManager:世界上最快、最方便的類系統之一。官網
  • klass:用於創建極富表現力的類工具庫。官網
  • augment:世界上最小且最快的一流 JavaScript 繼承模式。官網

控制流

  • async:適用於 node 和瀏覽器的非同步工具庫。官網
  • q:實現非同步的 promise JavaScript 庫。官網
  • step:讓邏輯順序合理化的非同步控制流庫。官網
  • contra:利用函數風格實現的非同步流控制。官網
  • Bluebird:專註於革新功能和性能的,功能齊全的 promoise 庫。官網
  • when:快速可靠的、Promises/A+ 規範的 when() 實現,而且擁有非同步其它的優秀特性。官網
  • ObjectEventTarget:提供增加了事件監聽的原型(與 DOMElement 的 EventTarget 在瀏覽器行為一致)。官網

路由

  • director:一個小巧的、與 URL 同構的路由器。官網
  • page.js:受 Express router 啟發的小型客戶端路由器(約為1200位元組)。官網
  • pathjs:簡單、輕量的 web 路由器。官網
  • crossroads:JavaScript 路由。官網
  • davis.js:使用 pushState、RESTful 風格和可降級的 JavaScript 路由器。官網
  • angular-ui-router:基於AngularJS的可嵌套路由。官網

安全性

  • DOMPurify:針對 HTML、MathML 和 SVG 的僅支持DOM、快速、高容錯的 XSS 過濾器。官網
  • js-xss:通過白名單配置,即可過濾不信任的 HTML(防止 XSS 攻擊)。官網

日誌

  • log:帶有樣式的 Console.log。官網
  • Conzole:對 JavaScript 原生 console 對象方法和功能進行封裝的 debug 面板,使其顯示在頁面內。官網
  • console.log-wrapper:將日誌清晰地記錄到 console,且相容所有瀏覽器。官網
  • loglevel:最輕量的 JavaScript 日誌記錄工具庫,向封裝後可用的 console.log 方法增加可靠的日誌等級。官網
  • minilog:輕量的、用流式 API 顯示的、可用於客戶端和伺服器端的日誌記錄庫。官網

正則表達式

  • RegEx101:線上的 JavaScript 正則表達式測試器和調試器。同時支持 Python、PHP 和 PCRE。官網
  • RegExr:用於創建、測試和學習正則表達式的 HTML/JS  工具。官網
  • RegExpBuilder:使用鏈式方法創建正則表達式。官網

媒體

  • Ion.Sound:可用於任何網頁上簡單音頻。官網

語音命令

  • annyang:向網站添加語音命令的語音識別庫。官網
  • voix.js:向網站、app 或游戲添加語音命令的 JavaScript 庫。官網

API

  • bottleneck:強大的頻率限制器,使調節流量變得更容易。官網
  • oauth-signature-js:適用於 node 和 瀏覽器的 OAuth 1.0a 簽名生成器。官網
  • amygdala:為 Web 應用提供 RESTful HTTP 客戶端解決方案。官網
  • jquery.rest:一個讓 RESTful API 更易使用的 jQuery 插件。官網

視覺檢測

  • tracking.js:在 web 上實現計算視覺的一種現代方法。官網
  • ocrad.js:通過 Emscripten 用 JavaScript 實現 OCR(光學字元識別)。官網

瀏覽器檢測

  • bowser:一個瀏覽器檢測器。官網

UI

代碼高亮

  • Highlight.js:JavaScript 語法高亮器。官網
  • PrismJS:輕量、健壯和優雅的語法高亮器。官網

載入狀態

指示載入狀態的庫。

  • Mprogress.js:創建谷歌 Material 設計風格的線性進度條。官網
  • NProgress:在 Ajax'y 應用顯示細長型進度條官網
  • Spin.js:一個旋轉的進度指示器。官網
  • progress.js:為頁面任何對象創建和管理進度條。官網
  • progressbar.js:用 SVG path 動畫製作的、漂亮和響應式的進度條。官網
  • pace:自動向你的網站添加一個進度條。官網
  • topbar:小巧漂亮的、與網站同寬的進度指示器。官網
  • nanobar:非常輕量的進度條。不依賴 jQuery。官網
  • PageLoadingEffects:使用 SVG 動畫展現新內容的現代方式。官網
  • SpinKit:運用 CSS 動畫的載入指示器集合。官網
  • Ladda:內置在按鈕的載入指示器。官網
  • css-loaders:運用 CSS 動畫的旋轉載入指示器的集合。官網

除了上述這些庫,還有收藏在 Codepen 的,另外還有 AjaxloadPreloaders 和 CSSLoad 這些生成器。

驗證

  • Parsley.js:不用寫一行 JavaScript 代碼即可在前端驗證表單。官網
  • jquery-validation:jQuery 驗證插件。官網
  • validator.js:字元串驗證和過濾(在使用用戶輸入之前清理用戶輸入中的有害或危險字元的操作)。官網
  • validate.js:受 CodeIgniter 啟發的輕量表單驗證 JavaScript 庫。官網
  • validatr:跨瀏覽器的 HTML5 表單驗證庫。官網
  • BootstrapValidator:是驗證表單域中最好的 jQuery 插件。要與 Bootstrap 3 一起使用。官網
  • is.js:檢查類型、正則表達式、是否存在、時間等。官網
  • FieldVal:多用途驗證庫。同時支持同步和非同步驗證。官網

鍵盤封裝器

  • mousetrap:處理鍵盤快捷鍵的 JavaScript 庫。官網
  • keymaster:定義和調度鍵盤快捷鍵的小型庫。官網
  • Keypress:鍵入捕捉工具庫,任何鍵都可以成為一個修飾健。官網
  • KeyboardJS:一個用於綁定鍵盤組合的 JavaScript 庫,讓你脫離快捷鍵和快捷鍵組合衝突的痛苦。官網
  • jquery.hotkeys:jQuery Hotkeys 能讓你在代碼任何的地方監聽鍵盤事件,並幾乎支持所有按鍵組合。官網
  • jwerty:令人驚嘆的鍵盤事件處理庫。官網

瀏覽和引導

  • intro.js:這是一個介紹新功能的很好方式,能一步步地引導用戶瀏覽你的網站和項目。官網
  • shepherd:通過引導讓用戶瀏覽你的應用程式。官網
  • bootstrap-tour:應用 Twitter Bootstrap 彈出框對產品進行快速簡單的引導。官網
  • tourist:簡單、靈活的應用引導介紹庫。官網
  • chardin.js:簡單的應用遮罩層介紹。官網
  • pageguide:使用 jQuery 和 CSS3 的 web 頁面元素交互引導庫。官網
  • hopscotch:讓開發者更容易向其頁面產品添加引導的框架。官網
  • joyride:基於 jQuery 的功能引導插件。官網
  • focusable:通過向頁面其餘部分添加遮罩層,使焦點聚集在特定 DOM 元素。官網

通知

  • messenger:為你的應用添加 Growl-style 彈框和信息(Crowl 是 Mac OS X 下的一個通知系統)。官網
  • noty:jQuery 通知插件。官網
  • pnotify:適用於 Bootstrap、jQuery UI 和 Web Notifications Draft 的 JavaScript 通知庫。官網
  • toastr:用來顯示簡單的,會自動到期的信息視窗)簡單的彈出框通知(toast notifications官網
  • humane-js:一個簡單、時髦的瀏覽器通知系統。官網
  • smoke.js:與框架無關的、能夠自定義樣式的 JavaScript 彈框系統。官網

幻燈片

  • Swiper:使用硬體加速過渡的移動設備觸控滑塊框架。官網
  • slick:你所需要的最後一個輪播插件。官網
  • slidesJs:響應式的 jQuery(1.7.1+)幻燈片插件,具有觸摸、 CSS3 過渡等特性。官網
  • FlexSlider:一款令人驚嘆的、全響應式的幻燈片 jQuery 插件。官網
  • unslider:最簡單的幻燈片 jQuery 插件。官網
  • colorbox:輕量、可自定義的燈箱 jQuery 插件。官網
  • fancyBox:提供了良好優雅的方式,為頁面上的圖片、html 內容和多媒體添加縮放功能的工具。官網
  • sly:基於項導航的、支持單向滾動的 JavaScript 庫。官網
  • vegas:向頁面添加漂亮的全屏背景的 jQuery 插件,甚至允許幻燈片。官網
  • Sequence:用於創建響應式的幻燈片、演示、旗幟廣告和以步驟為基礎的應用的 CSS 動畫框架。官網
  • baguetteBox.js:易於使用的、用純 JavaScript 實現的遮罩層腳本。官網
  • reveal.js:用 HTML 創建漂亮演示控制項的框架。官網
  • PhotoSwipe:適用於移動設備和桌面電腦的、模塊化和不無依賴框架的 JavaScript 畫廊控制項。官網
  • jcSlider:用 CSS 動畫實現的響應式幻燈片 jQuery 插件。官網
  • basic-jquery-slider:易於使用、指定主題和定製化。官網
  • unslider: 這是最簡單的幻燈片 jQuery 插件。官網
  • jQuery.adaptive-slider:帶有自適應顏色標題和導航的幻燈片 jQuery 插件。官網
  • slidr:可添加一些幻燈片效果。官網
  • Flickity:可觸摸的、響應式的和可輕彈的畫廊。官網

滑塊控制項

  • Ion.RangeSlider:強大的、易於自定義的範圍滑塊選擇庫,支持很多配置和皮膚。官網
  • jQRangeSlider:支持日期的滑塊選擇庫。官網
  • noUiSlider:輕量無冗餘的、高度定製化的滑塊選擇庫。官網
  • rangeslider.js:HTML5  input 區域滑塊元素。官網

表單組件

輸入

  • typeahead.js:快速的、功能齊全的自動補全庫。官網
  • tag-it:處理多標簽欄位以及標簽建議/自動完成的 jQuery UI 插件。官網
  • At.js:向你的應用添加類似 Github 的自動完成提示功能。官網
  • Placeholders.js:JavaScript 補全 HTML5 占位符的屬性。官網
  • fancyInput:利用 CSS3 效果讓輸入更有趣。官網
  • jQuery-Tags-Input:利用這個 jQuery 插件,可奇妙地將一個簡單的文本輸入轉換成一個酷酷的標簽列表。官網
  • vanilla-masker:一個純 JavaScript 實現的輸入控制庫。官網
  • Ion.CheckRadio:一個為覆選框和單選按鈕添加樣式的 jQuery 庫,支持多種皮膚。官網

日曆

  • pickadate.js:對移動設備友好的、響應式的和輕量的 jQuery 日期 & 時間輸入選擇器。官網
  • bootstrap-datepicker:基於 bootstrap 的日曆選擇器。官網
  • Pikaday:一個嶄新的 JavaScript 日期選擇器 —— 輕量、無依賴和模塊化的 CSS。官網
  • fullcalendar:全尺寸、支持拖放事件的日曆(jQuery 插件)。官網
  • rome:可定製的日期(和時間)選擇器。無依賴,可選 UI。官網
  • datedropper: datedropper 是一個 jQuery 插件,它提供了快速簡易的方式去管理日期輸入框。官網

選擇

  • selectize.js:Selectize 是文本框和選擇框的混合體。它基於jQuery,擁有自動完成和鍵盤感應下拉列表功能,可用於標簽、聯繫人列表等。官網
  • select2:它基於 jQuery,是選擇框(select box)的替代品。支持搜索、遠程數據集和無限滾動。官網
  • chosen:可以讓冗長不便的選擇框更友好的庫。官網

文件上傳

  • jQuery-File-Upload:File Upload 是一個支持多文件選擇、文件拖放、進度條、驗證和圖片、音頻、視頻預覽的 官網jQuery 插件。
  • dropzone:Dropzone 是一個易於使用且支持多文件拖放的庫。其支持圖片預覽並且擁有很好的進度條效果。官網
  • flow.js:一個通過 HTML5 的 File API ,提供多個同時鏈接的、穩定的、容錯的、可恢復的/可重新開始的文件上傳庫。官網
  • fine-uploader:一個帶有進度條、拖放功能和支持直接上傳到 S3 (Amazon Simple Storage Service,亞馬遜簡易存儲服務)的多文件上傳插件。官網
  • FileAPI:JavaScript 文件工具集合。支持多文件上傳、拖放和文件分塊上傳。對於圖像,支持裁剪、調整大小和根據 EXIF 自動調整方向。官網
  • plupload:處理文件上傳的 JavaScript 官網API,其支持多文件選擇、文件類型過濾、分塊請求、客戶端圖片縮放和根據不同的運行環境選擇 HTML5、Silverlight 和 Flash。

其它

  • form:jQuery 表單插件。官網
  • Garlic.js:自動在本地保存表單文本和選擇框的值,直到表單被提交。官網
  • Countable:對某個 HTML 元素包含文本的段落數、單詞數和字元數進行統計的 JavaScript 函數。官網
  • card:只需一行代碼,讓信用卡表單變得更友好。官網
  • stretchy:自適應大小的 form 元素,表單本應該是這樣的。官網
  • list.js:向表格、列表等 HTML 元素添加搜索、排序、過濾和自適應功能的庫。在已有 HTML 上增加可視化。官網

提示

  • tipsy:基於 jQuery 的 Fackbook 風格的提示工具(tooltip)。官網
  • opentip:開源且基於 prototype 框架的 JavaScript 工具提示庫。官網
  • qTip2:非常強大的工具提示庫。官網
  • tooltipster:一個工具提示 jQuery 插件。官網
  • simptip:用 Sass 製作的、簡單的工具提示。官網
  • jquery-popup-overlay:是一個響應式的和可訪問性強的模態框(modal)和工具提示框 jQuery 插件。官網

模態框和彈出框

  • Magnific-Popup:專註於性能、輕量、響應式的燈箱(lightbox)腳本。官網
  • jquery-popbox:jQuery 提示框插件。官網
  • jquery.avgrund.js:一種新的定於彈出的模態框 jQuery 插件。官網
  • vex:新的、擁有高度可配置和易於改變樣式功能的對話框庫。官網
  • bootstrap-modal:對 Bootstrap 預設的模態框類進行擴展。其支持響應式、可堆疊和 ajax 等。官網
  • css-modal:純 CSS 打造的模態框。官網
  • jquery-popup-overlay:是一個響應式的和可訪問性強的模態框和工具提示框(tooltips)jQuery 插件。官網

滾動

  • scrollMonitor:滾動發生時,可以監聽元素的、簡單、快速的 API。官網
  • headroom:除非你需要顯示頁面頭部(header),否則將隱藏它,以騰出頁面頭部空間。官網
  • onepage-scroll:創建一個類似 Apple 的單頁面滾動網站(iPhone 5S  網站)。官網
  • iscroll:高性能、輕量、無依賴、相容多平臺的 JavaScript 滾動組件。官網
  • skrollr:獨立(不依賴 jQuery) 的視差滾動庫,適用於移動設備(Android + iOS)和桌面電腦。官網
  • parallax:面向智能設備的視差引擎。官網
  • stellar.js:讓視差滾動變簡單。官網
  • plax:基於 jQuery 的視差庫。官網
  • jparallax:創建可交互視差效果的 jQuery 插件。官網
  • fullPage:簡單和易於使用的、用於創建全屏滾動網站的插件(也被稱為單頁面網站)。官網
  • ScrollMenu:讓老舊無聊的滾動條煥然一新。官網

菜單

  • jQuery-menu-aim:當用戶游標放在特定下拉菜單項時觸發事件。可製作響應式的、大數據量的下拉菜單,如 Amazon 的。官網
  • jQuery contextMenu:右鍵菜單(contextMenu) 管理工具。官網
  • Slideout:為移動設備的 web 應用製作出響應式的、可觸摸滑出的導航菜單。官網
  • Slide and swipe:一個基於 touchSwipe 庫的滑出菜單插件。官網

表格/柵格

  • jTable:基於 CRUD 表創建 AJAX 的 jQuery 插件。官網
  • DataTables:這是一個非常靈活的工具,在漸進增強的基礎上,將高級的交互效果加到 HTML 表格。(jQuery 插件)官網 
  • floatThead:(jQuery 插件)鎖定表格頭部,只允許表格內容滾動。適用於任何表格,而且不需要額外的 html 或 css。官網
  • Masonry:瀑布流式的網格佈局庫。官網
  • Packery:使用裝箱演算法(bin-packing)的網格佈局庫。支持拖拽佈局。官網
  • Isotope:可過濾和可排序的網格佈局的庫,它能實現 Masonry、Packery 等佈局。官網

框架

  • Semantic UI:擁有大量主題和元素的 UI 套件。官網

手勢

  • hammer.js:擁有多種觸摸手勢的 JavaScript 庫。官網
  • touchemulator:在桌面電腦模仿觸摸輸入。官網
  • Dragula:超級易於使用的拖拽庫。官網

地圖

  • Leaflet:對移動設備友好的、可交互的地圖 JavaScript 庫。官網
  • Cesium:開源的、基於 WebGL 實現的虛擬地球儀和地圖引擎。官網
  • gmaps:以最簡單的方式使用 Google 地圖。官網
  • polymaps:一個免費的、相容現代 web 瀏覽器的、用於製作動態可交互的地圖 JavaScript 庫。官網
  • kartograph.js:開源的 Kartograph SVG 地圖渲染器。官網
  • mapbox.js:Mapbox 的 API,Leaflet 的插件。官網
  • jqvmap:矢量地圖 jQuery 插件。官網
  • OpenLayers3:高性能的、功能豐富的庫,能滿足你對地圖所有需求。官網

視頻/音頻

  • prettyembed.js:更完美地嵌入 YouTube —— 擁有很好的選項,如高解析度的預覽圖、嵌入選項的高級定製和可選的 官網FitVids 支持。
  • html5media:能在所有主流瀏覽器播放多媒體標簽中定義的多媒體文件。官網
  • Play-em JS:Play'em 是一個 JavaScript 組件,它能管理音樂/視頻播放順序,通過在一個 DIV 元素里嵌入幾個播放器(Youtube、Soundcloud 和 Vimeo)來控制一系列歌曲的播放。官網
  • polyplayer:將 YouTube、Soundcloud 和 Vimeo 播放器的 API 統一成一套。官網
  • flowplayer: HTML5 視頻播放器 官網Github
  • mediaelement:讓 HTML5、 Flash 播放器和模仿 HTML5 媒介元素 API 的 Silverlight shim,在所有瀏覽器擁有一致的 UI。官網Github
  • SoundJS:讓音頻在 web 上運行更簡單的庫。它為不同瀏覽器提供了一致的 API。官網

動畫

  • velocity:加速 JavaScript 動畫。官網
  • jquery.transit:擁有超級流暢的 CSS3 變換和過渡的 jQuery 插件。官網
  • impess.js:在 HTML 文檔里,運用 CSS3 變換和過渡製作類似 Prezi 的展現效果。官網
  • bounce.js:可以立刻創建有趣的 CSS3 動畫。官網
  • GreenSock-JS:適用於所有主流瀏覽器的高性能 HTML5 動畫。官網
  • TransitionEnd:TransitionEnd 是一個運用 transitonend 事件的、跨瀏覽器的庫。官網
  • Dynamics.js:用於創建基於物理知識的 CSS 動畫庫。官網

圖片處理

  • lena.js:擁有濾鏡和實用功能的圖像處理庫。官網
  • pica:高質量地調整圖片大小(擁有快速的、純 JS 實現的 Lanczos 濾鏡演算法)。官網
  • cropper:一個簡單的圖像裁剪 jQuery 插件。官網

ECMAScript 6

  • es6features:ECMAScript 6 特性概述。官網
  • es6-features:ECMAScript 6:  特性概述和比較。官網
  • ECMAScript 6 compatibility table :Compatibility tables 展示了各種平臺上所有 ECMAScript 6 特性的支持程度。官網
  • Babel (Formerly 6to5):將 ES6+ 代碼轉換成純 ES5。官網
  • Traceur compiler:ES6 特性轉 ES5。包括 classes、generators、promises、destructuring 官網patterns、default parameters 等。

軟體開發工具包(SDK)

  • javascript-sdk-design:從工作和個人經驗中提煉出來的 JavaScript SDK 設計指導。官網

利器

  • echo:利用 data-* 屬性延遲載入圖片。官網
  • picturefill:響應式圖片顯示插件,使瀏覽器支持 srcset、size 屬性。官網
  • platform.js:一個平臺檢測庫,幾乎適用於所有 JavaScript 平臺。官網
  • json3:一個現代 JSON 實現庫,幾乎相容所有 JavaScript 平臺。官網
  • Logical Or Not:一個關於 JavaScript 特性的游戲。官網
  • BitSet.js:實現位向量的 JavaScript 庫。官網

精品閱讀

  • braziljs/js-the-right-way:官網
  • JSbooks:官網
  • Superhero.js:關於創建、測試和維護一個大型 JavaScript 代碼庫的資源集。官網

更多資源

原文: github sorrycc

譯文: https://github.com/rwson/awesome-javascript-cn

翻譯:劉健超、MissNull、一兮、Mr. Somebody、Jason LeeTab_Gre、GavinZhang、shadowkimi520、zhoutk、tzstone、Erichain、chen、ElizabethMa

非常歡迎大家補充,我會及時追加,謝謝!


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

-Advertisement-
Play Games
更多相關文章
  • Coloring Brackets time limit per test: 2 seconds time limit per test: 2 seconds memory limit per test: 256 megabytes memory limit per test: 256 megaby ...
  • 之前碰到的這樣一個需求,要將公司的服務在地圖中顯示出來,並將用戶每天的訪問坐標進行統計看有多少用戶是在所能達到的服務範圍半徑內。 以下是PHP代碼的實現 (僅驗證坐標在某片坐標區域內) 在地圖中的運用: ...
  • JHipster的亮點 JHipster或者稱Java Hipster,是一個應用代碼產生器,能夠創建Spring Boot + AngularJS的應用。開源項目地址:JHipster/Github。 JHipster使用Node.js和Yeoman產生Java應用代碼,使用Maven(Gradl ...
  • 拖拽改變div的大小 轉自:http://blog.csdn.net/w329636271/article/details/50696121 ...
  • 簡單封裝一個對象案例 補充: indexOf() 方法可返回某個指定的字元串值在字元串中首次出現的位置。如果要檢索的字元串值沒有出現,則該方法返回 -1。 lastIndexOf() 方法可返回一個指定的字元串值最後出現的位置,在一個字元串中的指定位置從後向前搜索。如果要檢索的字元串值沒有出現,則該 ...
  • Math.abs(num) : 返回num的絕對值 Math.acos(num) : 返回num的反餘弦值 Math.asin(num) : 返回num的反正弦值 Math.atan(num) : 返回num的反正切值 Math.atan2(y,x) : 返回y除以x的商的反正切值 Math.cei ...
  • 網站中的回到頂部功能有益於增強用戶體驗,當一個頁面很長很長時,回到頂部是必不可少的。 回到頂部按鈕,可以使用圖片,背景圖,矢量字體圖標,也可以使用代碼 css 生成。這裡使用 css 生成的方法。 使用 css 代碼生成的回到頂部按鈕如下: 對於回到頂部的多種方法總結如下: 1. 錨標記 # 包含了 ...
  • css代碼之所以初始化,是因為能儘量減少 各瀏覽器之間的相容性問題!騰訊QQ官網 樣式初始化 新浪官網 樣式初始化 body,ul,ol,li,p,h1,h2,h3,h4,h5,h6,form,fieldset,table,td,img,div{margin:0;padding:0;border:0 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...