No1—Prototype
特点:一个非常优雅的JS库,定义了JS的面向对象扩展,DOM操作API,事件等等,之上还有rico/script.aculo.us实现一些JS组件功能和效果(尚不够完善),以prototype为核心,形成了一个外围的各种各样的JS扩展库,是相当有前途的JS底层框架,突出特点就是非常易学易用,门槛很低,常常是一两行JS代码就可以搞定一个相关的功能。同时它也是RoR集成的AJAX JS库。
No2—Dojo
特点:Dojo包括了Javascript本身的语言扩展,以及各个方面的工具类库,和比较完善的UI组件库;Dojo设计的包加载机制(Package System)和模块化(Libraries)的结构,能保持更好的扩展性,提高执行性能,减轻了用户开发的工作量,并保持一定的灵活性(用户可以自己编写扩展);Dojo官方网站有着丰富的学习资源;专业的开发团队,可以保证更新速度及质量。
No3—Mootools
特点:小巧高效,完整下载36k;模块化设计,合理规范,优雅的OOP风格;创新的下载过程,可以跟据自己的需要勾选相应的模块下载,Build Your Own Framework;Effects模块(moo.fx)轻量高效,可以实现优雅、可定制、easing的动画;完整的API文档,丰富的范例。
No4—JQuery
特点:短小精悍(19k),接口设计得精妙(自然语言的风格),与程序思路配合精密。极大限度地体现了javascript的特性;支持xpath查询,dom1-3,轻松选择需要的元素;css支持;简单的动画实现,支持自定义动画;支持插件开发,现有插件多;完整的api文档以及范例,易学;拥有官方UI程序供使用,效果好。
No5—Dwr
特点:把java类转化为javascript类由dwr自动完成,只需简单的配置;应用起来极其简单。开发者不要该服务器代码就可以集成;容易测试。和webwork一样,隐藏的http协议;强扩展性。例如与spring集成,只需修改一点代码;性能。就与jason等简单比较,dwr性能可能是最好的。
No6—Buffalo
特点:国人开发的Ajax框架。定义了Web远程调用的传输基础,并且将远程调用对象完整的序列化到了本地,成为可以被JavaScript编程触及的对象。Buffalo中的重要组件-BuffaloBinding,提供了将JavaScript对象绑定到HTML元素的能力。这种绑定将是无侵入的,只需要在HTML元素中加入若干个不影响排版的属性,即可将数据与界面绑定。
No7—Yui
特点:Yahoo发布的AJAX组件库,是一个包含了各个方面,从工具类库到通讯,到UI组件的综合性JS库。YUL的最大优势在于文档非常齐全,而且有Yahoo的支持,缺点是库目前还不全,功能也不强大。
No8—Ext
特点:Ext来自于对YUI的扩展,扩展後功能和界面都有了很大的提高。初期仅仅是对YUI的对话框扩展,后来逐渐有了自己的特色,深受网友的喜爱。
No9—Qooxdoo
特点:不通过常规的HTML来构造页面,完全使用JS以类似VB/Delphi风格的编程方式构造Web GUI界面,比较适合内网面向C/S风格的web应用,而不适合面向Internet的界面多变风格的应用。
No10—Spry
特点:设计规范,功能全面,文档丰富,面向设计人员而不是开发人员。与其它一些Ajax框架相比,它的服务器端的技术不是很可靠。它依赖于XML,XML可以很容易被Spry组件接受。