所谓JavaScript库就是预先写好的可以简化基于JavaScript的应用程序开发的,尤其是Ajax和其它以web为中心的技术的JavaScript代码集。JavaScript主要用于写内嵌于HTML页面并和文档对象模型(DOM)进行打交道的各种函数(Function)。
一些JavaScript库很容易的和其它Web技术行进整合,譬如CSS, PHP, Ruby和Java。许多库可以检测不同的运行环境,并且消除应用程序为了兼容不一致而需要写的代码。
本文搜集了20个 JavaScript 库,它们能理清你遇到的开发相关的问题,让你的网站在竞争中领先一步。我们希望你能发现这个JavaScript库的列表对你的开发工作方便有用。尽情享受吧!
Tracking.js 是一个独立的JavaScript库,用于跟踪从相机实时收到的数据。跟踪的数据既可以是颜色,也可以是人,也就是说我们可以通过检测到某特定颜色,或者检测一个人体/脸的出现与移动,来触发JavaScript 事件。它是非常易于使用的API,具有数个方法和事件(足够使用了)。
Aristochart 是一个不依赖于其他库的 JavaScript 库,其功能是绘制二维的静态线图,使用 Canvas 绘制。该库特点是可定制,提供大量选项来更改设计、标签等等。
Hitch是一个轻量级的JavaScript库,它添加了CSS文件表现能力。它拥有CSS前缀或者变量强大的预处理能力,但也有一些其它的东西。这个类库出现了多个现成的选择器,比如"anyof, allof, has.."同时允许我们去定义任何新的(叫做 hitches)。
Cesium,一个基于WebGL的 JavaScript 绘图库, 通过其内部机制提供了这个能力。它支持3种不同的视图: 3D globe, 2D map,和 2.5D Columbus View ,从一种到另一种转换只需要一行代码。 画任何类型的形状,突出显示特定的地区以及使用鼠标或触摸与地图交互,都相当简单。Cesium只有一个 JS 文件,可在包括手机在内的所有主流浏览器运行。
Two.js 是一个令人激动的JavaScript库。它为SVG,Canvas和WebG提供二维和单一绘图API。这个类库目前仅仅支持形状(没有文字或图像)。它允许引入SVG数据。有用的地方在于它能够聚合多种元素,当需要将他们转化在一起。有一个内置的动画循环,方法去绘制知名的形状和多种选择去自定义它们。
Squel.js 是一个轻量级的JavaScript库。通过面对对象的API,它很容易就帮助我们建立SQL查询字符串。
它工作在所有的浏览器上(不被建议,因为查询可见)。通过node.js的帮助,它能够支持标准的SQL查询(它能够被定制去操作非标准的查询)
Draggabilly使得jQuery UI的拖拽交互变得容易了。它是一个独立的,轻量级的JavaScript库,元素的拖动可以限制在一个有此特性的容器当中,并且拖拽过程中每个事件(开始、移动、结束)都存在回调函数,它们也可以返回该元素的位置。
Zebra是一个JavaScript库,带有一批用来创建类似桌面效果布局的富用户界面组件。UI元素通过HTML5 canvas创建,由CSS着色,预期在所有现代浏览器中渲染出相同的效果。有30+ UI 组件,包括grid, tabs, menu, form elements, menu 等许多许多.
Formula.js 是一个JavaScript类库。对web开发者而言,它实现大部分公式。列出了公式的多个分类例如日期/时间,文本,逻辑,金额等。此外,客户端它需要和node.js(即将被发布)工作。
Chart.js 是一个令人印象深刻的图表类库,建立在HTM5 canvas之上。目前,它支持6种图表类型 (折线图,条形图,雷达图,饼图,柱状图和极地区域区)。而且这是一个独立的包,大小小于5kb。颜色,字体,边框和它们的尺寸都可以定制,图表可以动画的形式加载,非常炫。
Flippant.js 是一个迷你的JavaScript和CSS类库。它能够让你的页面事物产生翻转. 他不需要依赖别的类库,能够非常简单被定制,出口单一功能:翻转。
React是一个JavaScript类库目的是创建用户接口。它是足够高效,灵活地去和你所知道的库或框架很好地工作。
PathFinding.js是javascript中一个综合性的路径查找库。该项目的目标是提供一个易于集成到网页游戏中的路径查找库。它可能运行在Node.js或浏览器上。它提供了一个在线演示展示了算法是如何执行的。当实例化路径查找器时,你可以传递额外的参数来指明使用的查找策略。
Reactor 是用于响应式编程的轻量级库。它提供了响应变量,这些变量会在它们依赖的东西变化的时候,进行自动更新。 这类似于电子表格的工作方式,一些单元格可以根据其它单元格的变化自动改变自己的数值。
Bootbox.js 是一个小的JavaScript库,它允许您通过Twitter的Bootstrap模型,创建程序性对话框, 而不需要考虑创建,管理或者去除任何需要的DOM元素 或 JS事件处理程序。
Parallel.js 是用于在JavaScript中进行多核处理的微型库。它的创建发挥了以前成熟的web-workers API 的优势。没错 Javascript是很快,但由于它的单线程计算模型,它缺乏了与其对等语言的并行计算功能。
SVG.js 是一个JavaScript类库。它可以非常简单地通过SVG操作动画。这个类库是单独的,不依赖别的类库。它是轻量级的,大小只有5kb。但是它有许多的功能。它有内置的方法去创建图形(三角形,圆形,多边形等等)或者定义图形
Packery 是一个使用"装箱"算法的Js布局库。这是“补漏”的体面说法。 Packery的布局可以是智能有序的,也可以是有组织狂野的。节点可以被固定在某一处,或找到某一处完美的地方,也可以被随意拖动。
FPSMeter 是一个简单的JavaScript库,用来制作迷人、快速、可主题化的FPS仪表。它能计量每秒帧数, 帧之间的毫秒数,以及当使用.tickStart()方法时,渲染一帧所需要的毫秒数。
Howler.js 默认是基于网页音频接口的一个Js库,当浏览器不支持时,它返回HTML5音频。为了保证跨浏览器兼容性,它允许接收多种文件格式。该库能同时缓存和播放多个声音(能对他们单个的或则全局的进行静音或关闭静音).该库拥有声音进行循环播放功能、淡入/淡出效果和标准的多媒体控制功能。
转自:http://www.oschina.net/translate/20-javascript-libraries-to-simplify-development-task