原文:http://blog.csdn.net/tuwen/archive/2010/01/12/5181599.aspx
流行 JavaScript 库不胜枚举
jQuery, MooTools, Prototype, Dojo, YUI
这些 JavaScript 库功能丰富
加上它们
插件
几乎能胜任任何工作
然而这
有代价
这些库往往导致你
网页尺寸臃肿
某些场合
如果你只想完成特定
工作
可
使用一些功能更专一
轻量库
本文介绍了40个非常出色
轻量级 JavaScript 库
1. 表单相关
wForms
一个低调开源项目
简化了绝大多数常用 JavaScript 表单功能
包含可
直接使用
表单验证功能
另外
还包含强大
表单同步
及表单条件判断功能
Validanguage
又一个低调 JavaScript 表单验证框架
它拥有集成逻辑
一些设置可
针对全局
单个表单或单个对象
提供两个API
集成 AJAX 支持
缓存
及回调函数
它提供类似 HTML
API 语句
及面向对象
JavaScript API
LiveValidation
一个轻量表单验证库
除了传统
验证功能
还提供实时验证
可
一边输入一遍验证
Ruby on Rails 用户可能会发现这个库非常好用
因
他们
命名规则和参数十分近似
该库既有独立版本
又有一个 Prototype 版本
yav
一个强大灵活
可扩展
表单验证库
支持各种场合
从简单
如日期
电子邮件
址
及整数
验证
到复杂
如正则表达式
内置 AJAX 支持
输出
错误消息可
定位到对象级
qForms
处理表单整套方案
功能包括各种验证规则
防止多次发布
机制
及锁定或解锁制定输入框
formreform
不基 table
多栏设计向来
一个挑战
这个微型库将传统
表单变成漂亮
多栏形式
2. 动画相关
$fx()
一个用来让 HTML 对象运动轻量库
你可
一个时间轴上改变任何 CSS 属性
对
复杂动画
你可
将各种效果结合起来
将对象分组
让它们并行运动
JSTweener
一个生成间帧
JavaScript 库
它
API 类似著名
间帧引擎 Tweener
你可
指定动画时间
定义切换效果
及时延
几乎任何点都可
触动事件
Facebook Animation
一个强大用来创建可定制
基
CSS
动画
Facebook 动画
几行代码就可
改善 UI
语法和 FBJS (用
Facebook
库)一样
FX
一个语法类似 YUI 轻量 JavaScript 库
可
几乎任何 CSS 属性创建
间帧
支持颜色和滚动动画
对象设置 to 和 from 值就可
了
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812679016881.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812679016881.gif)
![](http://www.97info.com/upload/200812873018273.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812870462945.gif)
![](http://www.97info.com/upload/200812870623097.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812679016881.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812870223465.gif)
![](http://www.97info.com/upload/200812870462945.gif)
![](http://www.97info.com/upload/200812679016881.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812679016881.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812870462945.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812679016881.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812873083673.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812873083673.gif)
![](http://www.97info.com/upload/200812679016881.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812679016881.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812679016881.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812873149849.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812870623097.gif)
![](http://www.97info.com/upload/200812679016881.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812870462945.gif)
![](http://www.97info.com/upload/200812679016881.gif)
![](http://www.97info.com/upload/200812870623097.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812679016881.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812835580733.gif)
![](http://www.97info.com/upload/200812873112537.gif)
![](http://www.97info.com/upload/200812835777789.gif)
![](http://www.97info.com/upload/200812835580733.gif)
5. 字符串与数学函数
Date.js
和日期打交道不件容易事
有很多格式要处理
Datejs 可
很好
处理简单或复杂
日期函数
可
将日期解析出诸如“Next thursday”
“+2 years”一类
格式
也支持所有日期形式
如 2009.01.08, 12/6/2001
Sylvester
一个处理矢量和点阵数学 JavaScript 库
包含多维矢量和点阵建模类
及
3D空间
一些模型
Pretty Date
一个很出色 JavaScript 库
用一种很漂亮
很友好
方式显示日期
如下图所示
XRegExp
JavaScript RegExp 对象已经支持正则表达式
XRegExp 增加了更多未来浏览器可能包含
功能(ECMAScript 4 - ES4)
该库对 RegExp 对象进行缓存
重用并增加了众多新功能
JavaScript URL Library
一个用来处理 URL JavaScript 库
可
对 URL
任意部分进行处理
6. Fonts
typeface.js
这个库可让你
网页
使用任意字体
但和 sIFR
及 FLIR 这些基
Flash
方案不一样
typeface.js 100% 基
JavaScript
只需将你
字体文件上传到一个基
Web
生成器那里
再将生成
JavaScript 文件下载回来包含到网页
即可
Cufón
和 typeface.js 很相像Cufón 也可
让你
网页
使用任意字体
同样
它也
使用一个生成器
将字体转换成 VML
将生成
.js 文件包含到网页即可
7. 调试与记录
Blackbird
人们经常使用 Alert() 调试 JavaScript 程序Blackbird 提供了一个漂亮
控制台记录
查看
过滤程序
运行
NitobiBug
基浏览器
跨浏览器 javaScript 对象记录与检查工具
Firebug Lite
目前最好 JavaScript 调试工具非 Firebug 莫属
然而该工具只支持 FireFox
将 Firebug Lite .js 文件插入你
网页
就可
所有浏览器都实现 FireBug 功能
8. 其它
swfobject
这一个最受欢迎
对 Flash 对象进行引用
方法
可
生成标准 swf 引用代码
并探测用户播放器版本
如果用户版本不支持
会显示备用内容
sorttable 与 dragtable
不管你喜欢与否table 仍然
最好
表现数据
方式
但可
更好
利用
sorttable 可
让表格数据排序
只需
table 上加一个 class="sortable" 标志
还可
排除指定
栏
dragtable 让表格
栏可
拖动
表格上加上 class="dragable" 标志即可
这两个类可
结合起来使用
只需加上 class="dragtable sortable" 即可
DD_roundies 与 DD_belatedPNG
DD_roundies 可不依赖图片实现圆角功能
只面向 IE
通过 VML 实现
其它浏览器会被略过
因
那些浏览器本身支持 CSS 圆角
DD_belatedPNG 了解决 IE6 对 PNG 支持不好问题而开发
不管 PNG 图片用
src 还
background-image
DD_belatedPNG 都能提供修补
Custom JavaScript Dialog Boxes
一个只有 4.5K 轻量 JavaScript 库
可
创建用户定制对话框
可显示4种类型
消息框
alerts, warnings, prompts, success
可
设定消息框标题
内容
及过多长时间显示
GameJS
GameJS 微软
XNA 游戏框架
JavaScript 上
移植
使用 canvas 对象作
输出设备
JavaScript 不
最佳游戏平台
但对那些帧率较低
游戏也没有问题
Shortcuts.js
从 Google Reader 和 Gmail 开始Web 程序
快捷键开始流行起来
Shorcuts.js 让快捷键
处理变
简单
Mapstraction
有不少图提供商都提供不同 API
如果你要更换提供商
比如从 Google Maps 到 MapQuest
需要更新代码
Mapstraction 提供了常用
图提供商
API
只需该一行代码就能完成转换
Amberjack
一个只有 4K 微型 JavaScript 库
可
你
网站添加漂亮
教程功能
一个模式窗口会
教程
形式显示任意内容
教程
步骤可
通过手工编码实现或
线自动生成
可
使用主题或 CSS 控制内容
格式
JsLoad
JsLoad 可从 Google server 远程加载各种 JavaScript 库
可
自动加载各种版本
支撑库
8. 其它
swfobject
这一个最受欢迎
对 Flash 对象进行引用
方法
可
生成标准 swf 引用代码
并探测用户播放器版本
如果用户版本不支持
会显示备用内容
sorttable 与 dragtable
不管你喜欢与否table 仍然
最好
表现数据
方式
但可
更好
利用
sorttable 可
让表格数据排序
只需
table 上加一个 class="sortable" 标志
还可
排除指定
栏
dragtable 让表格
栏可
拖动
表格上加上 class="dragable" 标志即可
这两个类可
结合起来使用
只需加上 class="dragtable sortable" 即可
DD_roundies 与 DD_belatedPNG
DD_roundies 可不依赖图片实现圆角功能
只面向 IE
通过 VML 实现
其它浏览器会被略过
因
那些浏览器本身支持 CSS 圆角
DD_belatedPNG 了解决 IE6 对 PNG 支持不好问题而开发
不管 PNG 图片用
src 还
background-image
DD_belatedPNG 都能提供修补
Custom JavaScript Dialog Boxes
一个只有 4.5K
![]()
GameJS GameJS
![]()
Shortcuts.js 从 Google Reader 和 Gmail 开始
Mapstraction 有不少
![]()
Amberjack 一个只有 4K
![]()
JsLoad JsLoad 可 |
5. 字符串与数学函数
Date.js
和日期打交道不件容易事
有很多格式要处理
Datejs 可
很好
处理简单或复杂
日期函数
可
将日期解析出诸如“Next thursday”
“+2 years”一类
格式
也支持所有日期形式
如 2009.01.08, 12/6/2001
Sylvester
一个处理矢量和点阵数学 JavaScript 库
包含多维矢量和点阵建模类
及
3D空间
一些模型
Pretty Date
一个很出色 JavaScript 库
用一种很漂亮
很友好
方式显示日期
如下图所示
XRegExp
JavaScript RegExp 对象已经支持正则表达式
XRegExp 增加了更多未来浏览器可能包含
功能(ECMAScript 4 - ES4)
该库对 RegExp 对象进行缓存
重用并增加了众多新功能
JavaScript URL Library
一个用来处理 URL JavaScript 库
可
对 URL
任意部分进行处理
6. Fonts
typeface.js
这个库可让你
网页
使用任意字体
但和 sIFR
及 FLIR 这些基
Flash
方案不一样
typeface.js 100% 基
JavaScript
只需将你
字体文件上传到一个基
Web
生成器那里
再将生成
JavaScript 文件下载回来包含到网页
即可
Cufón
和 typeface.js 很相像Cufón 也可
让你
网页
使用任意字体
同样
它也
使用一个生成器
将字体转换成 VML
将生成
.js 文件包含到网页即可
7. 调试与记录
Blackbird
人们经常使用 Alert() 调试 JavaScript 程序Blackbird 提供了一个漂亮
控制台记录
查看
过滤程序
运行
NitobiBug
基浏览器
跨浏览器 javaScript 对象记录与检查工具
Firebug Lite
目前最好 JavaScript 调试工具非 Firebug 莫属
然而该工具只支持 FireFox
将 Firebug Lite .js 文件插入你
网页
就可
所有浏览器都实现 FireBug 功能
8. 其它 swfobject 这 |
sorttable 与 dragtable
不管你喜欢与否table 仍然
最好
表现数据
方式
但可
更好
利用
sorttable 可
让表格数据排序
只需
table 上加一个 class="sortable" 标志
还可
排除指定
栏
dragtable 让表格
栏可
拖动
表格上加上 class="dragable" 标志即可
这两个类可
结合起来使用
只需加上 class="dragtable sortable" 即可
DD_roundies 与 DD_belatedPNG
DD_roundies 可不依赖图片实现圆角功能
只面向 IE
通过 VML 实现
其它浏览器会被略过
因
那些浏览器本身支持 CSS 圆角
DD_belatedPNG 了解决 IE6 对 PNG 支持不好问题而开发
不管 PNG 图片用
src 还
background-image
DD_belatedPNG 都能提供修补
Custom JavaScript Dialog Boxes
一个只有 4.5K 轻量 JavaScript 库
可
创建用户定制对话框
可显示4种类型
消息框
alerts, warnings, prompts, success
可
设定消息框标题
内容
及过多长时间显示
GameJS
GameJS 微软
XNA 游戏框架
JavaScript 上
移植
使用 canvas 对象作
输出设备
JavaScript 不
最佳游戏平台
但对那些帧率较低
游戏也没有问题
Shortcuts.js
从 Google Reader 和 Gmail 开始Web 程序
快捷键开始流行起来
Shorcuts.js 让快捷键
处理变
简单
Mapstraction
有不少图提供商都提供不同 API
如果你要更换提供商
比如从 Google Maps 到 MapQuest
需要更新代码
Mapstraction 提供了常用
图提供商
API
只需该一行代码就能完成转换
Amberjack
一个只有 4K 微型 JavaScript 库
可
你
网站添加漂亮
教程功能
一个模式窗口会
教程
形式显示任意内容
教程
步骤可
通过手工编码实现或
线自动生成
可
使用主题或 CSS 控制内容
格式
JsLoad
JsLoad 可从 Google server 远程加载各种 JavaScript 库
可
自动加载各种版本
支撑库
8. 其它
swfobject
这一个最受欢迎
对 Flash 对象进行引用
方法
可
生成标准 swf 引用代码
并探测用户播放器版本
如果用户版本不支持
会显示备用内容
sorttable 与 dragtable
不管你喜欢与否table 仍然
最好
表现数据
方式
但可
更好
利用
sorttable 可
让表格数据排序
只需
table 上加一个 class="sortable" 标志
还可
排除指定
栏
dragtable 让表格
栏可
拖动
表格上加上 class="dragable" 标志即可
这两个类可
结合起来使用
只需加上 class="dragtable sortable" 即可
DD_roundies 与 DD_belatedPNG
DD_roundies 可不依赖图片实现圆角功能
只面向 IE
通过 VML 实现
其它浏览器会被略过
因
那些浏览器本身支持 CSS 圆角
DD_belatedPNG 了解决 IE6 对 PNG 支持不好问题而开发
不管 PNG 图片用
src 还
background-image
DD_belatedPNG 都能提供修补
Custom JavaScript Dialog Boxes
一个只有 4.5K 轻量 JavaScript 库
可
创建用户定制对话框
可显示4种类型
消息框
alerts, warnings, prompts, success
可
设定消息框标题
内容
及过多长时间显示
GameJS
GameJS 微软
XNA 游戏框架
JavaScript 上
移植
使用 canvas 对象作
输出设备
JavaScript 不
最佳游戏平台
但对那些帧率较低
游戏也没有问题
Shortcuts.js
从 Google Reader 和 Gmail 开始Web 程序
快捷键开始流行起来
Shorcuts.js 让快捷键
处理变
简单
Mapstraction
有不少图提供商都提供不同 API
如果你要更换提供商
比如从 Google Maps 到 MapQuest
需要更新代码
Mapstraction 提供了常用
图提供商
API
只需该一行代码就能完成转换
Amberjack
一个只有 4K 微型 JavaScript 库
可
你
网站添加漂亮
教程功能
一个模式窗口会
教程
形式显示任意内容
教程
步骤可
通过手工编码实现或
线自动生成
可
使用主题或 CSS 控制内容
格式
JsLoad
JsLoad 可从 Google server 远程加载各种 JavaScript 库
可
自动加载各种版本
支撑库