八款Js框架介绍及比较,Dojo 、Scriptaculous 、Prototype 、yui-ext 、Jquery 、Mochikit、mootools 、moo.fx,componentartui (转载)

Extjs 与 JQuery

1.Turbomail(www.turbomail.org)下一版本决定用Extjs + jquery 开发。
2.JQuery 提供了方便的对网页元素操作方法,但不提供基本控件,如:Tab,Grid,Muen 等,Extjs 是一套   完整的控件库,Extjs 提供这些控件。
3.Extjs 对制作控件的方法就是使用div 画格子,这点类似当年我写 windows 基本控件使用的方法。所以说   通过 js 完全可实现windows 界面。
4.Extjs 也提供JQuery 所包含的功能
5.Extjs 库体积大,JQuery 体积小,这是因为JQuery 只提供了网页元素操作方法,不提供控件,不过如果你  自己开发一套具有Extjs 这样完整的控件库,体积肯定不比Extjs 小
6.Extjs 和 JQuery 的源代码都写得很好,很值得一看。

八款Js框架介绍及比较 收藏

Posted on 2008-05-10 22:53 上校 阅读(3626) 评论(4)  编辑 收藏 网摘 所属分类: JavaScript  
目前来看,JS框架以及一些开发包和库类有如下几个,Dojo 、Scriptaculous 、Prototype 、yui-ext 、Jquery 、Mochikit、mootools 、moo.fx
Dojo (JS library and UI component ):
Dojo是目前最为强大的j s框架,它在自己的Wiki上给自己下了一个定义,dojo是一个用JavaScript编写的开源的DHTML工具箱。dojo很想做一个“大一统”的工具箱,不仅仅是浏览器层面的,野心还是很大的。Dojo包括ajax, browser, event, widget等跨浏览器API,包括了JS本身的语言扩展,以及各个方面的工具类库,和比较完善的UI组件库,也被广泛应用在很多项目中,他的UI组件的特点是通过给html标签增加tag的方式进行扩展,而不是通过写JS来生成,dojo的API模仿Java类库的组织方式。 用dojo写Web OS可谓非常方便。dojo现在已经4.0了,dojo强大的地方在于界面和特效的封装,可以让开发者快速构建一些兼容标准的界面。

优点:库相当完善,发展时间也比较长,功能强大,据说利用dojo的io.bind()可以实现comet,看见其功能强大非一般,得到IBM和SUN的支持
缺点:文件体积比较大,200多KB,初次下载相当慢,此外,dojo的类库使用显得不是那么易用,j s语法增强方面不如prototype。

Prototype (JS OO library):
是一个非常优雅的JS库,定义了JS的面向对象扩展,DOM操作API,事件等等,以prototype为核心,形成了一个外围的各种各样 的JS扩展库,是相当有前途的JS底层框架,值得推荐,感觉也是现实中应用最广的库类(RoR集成的AJAX JS库),之上还有 Scriptaculous 实现一些JS组件功能和效果。

优点:基本底层,易学易用,甚至是其他一些js特效开发包的底层,体积算是最小的了。
缺点:如果说缺点,可能就是功能是他的弱项

Scriptaculous (JS UI component based on prototype):
Scriptaculous是基于prototype.js框架的JS效果。包含了6个js文件,不同的文件对应不同的js效果,所以说,如果底层用 prototype的话,做js效果用Scriptaculous那是再合适不过的了,连大名鼎鼎的digg都在用他,可见不一般
优点:基于prototype是最大的优点,由于使用prototype的广泛性,无疑对用户书锦上添花,并且在《ajax in action》中就拿Scriptaculous来讲述js效果
缺点:刚刚兴起,需要时间的磨练

yui-ext (JS UI component):
基于Yahoo UI的扩展包yui-ext是具有CS风格的Web用户界面组件能实现复杂的Layout布局,界面效果可以和backbase媲美,而且使用纯javascript代码开发。真正的可编辑的表格Edit Grid,支持XML和Json数据类型,直接可以迁入grid。许多组件实现了对数据源的支持,例如动态的布局,可编辑的表格控件,动态加载的Tree 控件、动态拖拽效果等等。1.0 beta版开始同Jquery合作,推出基于jQuery的Ext 1.0,提供了更多有趣的功能。
优点:结构化,类似于java的结构,清晰明了,底层用到了Jquery的一些函数,使整合使用有了选择,最重要的一点是界面太让让人震撼了。
缺点:太过复杂,整个界面的构造过于复杂。

Jquery :
jQuery是一款同prototype一样优秀js开发库类,特别是对css和XPath的支持,使我们写js变得更加方便!如果你不是个js高手又想写出优 秀的js效果,jQuery可以帮你达到目的!并且简介的语法和高的效率一直是jQuery追求的目标,

优点:注重简介和高效,js效果有yui-ext的选择,因为yui-ext 重用了很多jQuery的函数
缺点:据说太嫩,历史不悠久。

Mochikit :
MochiKit自称为一个轻量级的js框架。MochiKit 主要受到 Python 和 Python 标准库提供的很多便利之处的启发,另外还缓解了浏览器版本之间的不一致性。其中的 MochiKit.DOM 尤其方便,能够以比原始 JavaScript 更友好的方式处理 DOM 对象。MochiKit.DOM 大部分都是针对 XHTML 文档定制的,如果与 MochiKit 和 Ajax 结合在一起,使用 XHTML 包装的微格式尤其方便。Mochikit可以直接对字符串或者数字格式化输出,比较实用和方便。它还有自己的 js 代码解释器

优点:MochiKit.DOM这部分很实用,简介也是很突出的
缺点:轻量级的缺点

mootools :
MooTools是一个简洁,模块化,面向对象的JavaScript框架。它能够帮助你更快,更简单地编写可扩展和兼容性强的JavaScript代码。Mootools跟prototypejs相类似,语法几乎一样。但它提供的功能要比prototypejs多,而且更强大。比如增加了动画特效、拖放操作等等。

优点:可以定制自己所需要的功能,可以说是prototypejs的增强版。
缺点:不大不小,具体应用具体分析
moo.fx :
moo.fx是一个超级轻量级的javascript特效库(7k),能够与prototype.js或mootools框架一起使用。它非常快、易于使用、跨浏览器、符合标准,提供控制和修改任何HTML元素的CSS属性,包括颜色。它内置检查器能够防止用户通过多次或疯狂点击来破坏效果。moo.fx整体采用模块化设计,所以可以在它的基础上开发你需要的任何特效。

优点:小块头有大能耐
缺点:这么小了,已经不错了

转自:http://www.cnblogs.com/zhuawang/archive/2008/05/10/1191701.html

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/Vanessa219/archive/2009/04/17/4087688.aspx

美国主流网站所使用的JavaScript框架 收藏

作者:Pingdom 时间:2008-10-04 来自:翻译 技术等级: 
哪些JavaScript框架是最常见,使用最频繁的?

要回答这个问题,我们对大约200个美国主流网站进行了调研,检查他们是否使用了JavaScript框架?如果使用,那么他们选用什么样的框架?在这里,我们选择检测的网站均源自于Alexa美国网站排名前100名和WebWare前100个WEB应用程式。而我们所检测的JavaScript框架包括: Prototype, JQuery, MooTools, Yahoo! UI Library, Dojo, ExtJS 以及 MochiKit。

我们很快就发现, Dojo, ExtJS和MochiKit基本不被这些主流网站所采用。于是,我们就将目光锁定到了剩下的4款JavaScript框架上。

Prototype
Prototype是早期的JavaScript框架之一,而它也同时被应用到了Ruby on Rails框架之中。在所有检测的200个网站中,有13个网站采用Prototype作为其开发框架,包括:

CNN 
The New York Times 
Digg 
Apple 
Veoh.com 
TypePad 
Fox News Channel 
Finetune 
iLike 
Last.fm 
Twitter 
Hakia 
YouSendIt 
JQuery
Jquery框架因其库文件大小,速度以及丰富的模式化操作所带来的海量插件库,目前引起了大家广泛的关注。在所有检测的网站中,有11个网站采用Jquery框架作为其开发框架,这包括:

Digg 
BBC 
Major League Baseball 
Dell 
IsoHunt 
Break.com 
TinyPic 
FixMyMovie 
eMusic 
Kayak 
Box.net 
MooTools
与其他很多框架类似,Mootools包含了大量的函数和方法来协助其开发与拓展,这里面最著名的莫过于advanced effects组件了(advanced effects component)。在所有检测的网站中,有4个网站采用了MooTools:

Mint 
Worth1000 
Bebo 
Vimeo 
Yahoo! UI Library (YUI)
这是一套Yahoo(雅虎)自行开发的JavaScript框架。雅虎不仅将其作为自己所属网站的JS开放框架,而且免费提供给其他人自由使用。在所有检测的网站中,有7个网站采用了 Yahoo! UI Library:

Yahoo! Shopping 
Zillow 
Bebo 
YouSendIt 
ImageShack 
LinkedIn 
Walmart.com 
那些我们无法确定使用框架的网站
在检测的网站中,有不少网站采用了不止一个JavaScript框架,而是多个组合使用。而这就导致,用户必须不得不被迫下载所有这些框架库,但所用到的功能仅仅是这些框架的部分功能。这种情况无疑是可以避免的。

这部分网站将多种框架组合使用,可能是考虑希望使用每个框架中最精华的部分,也可能是在项目中期临时换掉了项目开始时所确定的那个JavaScript框架,他们还却没有来得及将所有代码进行整合统一。

这些使用多个JS框架的网站是:Digg (Prototype和JQuery), Bebo (MooTools和YUI) 以及YouSendIt (Prototype和YUI)。

总结
在本次检测中,Prototype似乎是最受主流网站欢迎的JS框架,而JQuery紧随其后。有
趣的是,我们也看到有多个网站采用 Yahoo! UI Library框架作为他们的JS框架,这与我们当初的想象是有一定差距的。

本次对这些主流网站的JS框架检查,可能不是百分之百的真实的,因为我们仅仅检测了他们的网站首页上所使用的框架。并且,我们也没有注册登录这些网站进行检查,所有在数据上可能存在一定的漏洞。

我们是如何做检测的?

首先,我们列出Alexa上美国网站前100名和WebWare前100个应用程式;然后,我们利用一个特殊的小工具进行关键字检查以确定其网站使用的JavaScript框架。

比如,对于Prototype来说,我们会搜索“prototype.js” 和 “/prototype”字符串以确定网站是否使用prototype或它的修改版本(除非所有的类似“prototype”都被替换去除掉了)。

当然,我们也会手工查看工具所检查出的这些网站所使用的框架是否与实际相符。比如,我们就去除掉了那些仅适用了雅虎的CSS框架,而非JavaScript框架的网站。

原文:Javascript framework usage among top websites

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/Vanessa219/archive/2009/04/17/4087680.aspx

流行的AJAX框架对比:jQuery,Mootools,Dojo,Ext JS
2009-07-31 17:40

AJAXweb20的基石,现在网上流行几种开源的AJAX框架,比如:jQuery,Mootools,Dojo,Ext JS等等,那么我们到底在什么情况下该使用那个框架?以下是一组摘抄的数据:

Ajaxian在2007年底对Ajax工具进行了调查,部分调查结果见下表(其中数字为调查者使用该工具的百分比,详细的请参见网页):http://ajaxian.com/archives/2007-ajax-tools-usage-survey-results

Prototype jQuery Ext Script.aculo.us Mootools YUI JSON Dojo Backbase
34.1% 29.3% 22.5% 22.3% 14.3% 13% 12.9% 11.8% 8.3%

其中Prototype使用率最高,很大程度上是因为它是最早成熟的框架,很多以前在项目中采用,所以现在一直在用

让我们来看看选择AJAX框架的基础:

你的项目需求(即你需要哪些特性,例如是否要求做出精美的界面、特效或其它功能)

是否支持A等级的浏览器(IE, Firefox等)?

文档的质量:是否完善(包含教程,API,代码示例等)

框架的可扩展性如何?为框架写插件容易吗?

你是否喜欢它的API的风格?

能大多程度上统一你的JavaScript代码的风格?

框架大小(太大的框架导致用户下载时间的延长)

框架是否强迫你改变写HTML的方式(Dojo就是这样)?

代码执行速度:性能如何?

代码是否为模块化(Mootools为高度模块化)?代码可重用性如何?

一、jQuery

主页:http://jquery.com/

设计思想

简洁的思想:几乎所有操作都是以选择DOM元素(有强大的Selector)开始,然后是对其的操作(Chaining等特性)。

优点

小,压缩后代码只有20多k(无压缩代码94k)。

Selector和DOM操作的方便:jQuery的Selector与mootools的Element.Selectors.js比较,CSS Selector, XPath Selector(1.2后已删除)

Chaining:总是返回一个jQuery对象,可以连续操作。

文档的完整,易用性(每个API都有完整的例子,这是其它框架现在不能比的),而且网上还有很多其它的文档,书籍。

应用的广泛,包括google code也使用了jQuery。

使用jQuery的站点:http://docs.jquery.com/Sites_Using_jQuery

核心的开发团队和核心人员:John Resig等。

简洁和简短的语法,容易记。

可扩展性:有大量用户开发的插件可供使用(http://jquery.com/plugins/)

jQuery UI(http://jquery.com/plugins/,基于jQuery,但和核心的jQuery是独立的),不断发展中。

友好和活跃的社区:google groups: http://docs.jquery.com/Discussion

事件处理有很多方便的方法,如click,而不是单一的addEvent之类的。

缺点

由于设计思想是追求高效和简洁,没有面向对象的扩展。设计思路和Mootools不一样。

CSS Selector的速度稍微有些慢(但是现在速度已经大幅提高)

Mootools

主页:http://mootools.net/

设计思想

面向对象的设计思想。

优点

模块化,各模块代码非常独立,最小的核心只有8k,最大的优点是可选择使用哪些模块,用的时候只导入使用的模块即可,完整的也不到180k(没有压缩),压缩后不到70k。

语法的简洁,直观。

特效(Effects):这一点比jQuery稍强,现在也正在开发Mootools UI(这应该是Ajax框架开发的一个趋势)。

代码写的优美,易阅读和修改。

文档的完整(最新的1.2beta的文档比以前更详细)。

活跃的社区:官网(http://forum.mootools.net/),还有一个IRC。

性能:见:http://mootools.net/slickspeed/

缺点

修改了低层的一些类:如Array, String等,这也是设计思想的不同。

在DOM和CSS Selector上不如jQuery强大。

Dojo

主页:http://dojotoolkit.org/

优点

背后强大的支持:IBM、Sun、BEA等,这是非常重要的优势。

功能的强大,Full Stack的框架,扩展了DHTML的能力,例如:

支持与浏览器Back/Forward按钮的集成。

Dojo Offline,一个跨平台的离线存储API。

Chart组件,可以方便地在浏览器端生成图表。

基于SVG/VML的矢量图形库。

Google Maps、Yahoo! Maps组件,方便开发Mashup应用。

Comet支持,通过通用的Buyeux协议。

强大的UI(Dijit)。

面向对象的设计,统一的命名空间,包管理机制(The Package System and Custom Builds)

可扩展性。

缺点

复杂,学习曲线陡。

文档的极端不全,这是一个很大的问题。

API很多不稳定,各版本间改动较大,现在还不是一个成熟的框架。

侵入性太大,页面中大量使用dojo的属性,例如<button dojoType="dijit.form.Button" id="helloButton">,如果将来dojo升级或者换一个框架时,负担会很大。

性能问题,由于dojo加载采用了同步的机制,会暂时锁定浏览器,导致CPU使用率达到100%。另外,很多Widget的速度很慢。

Ext JS

主页:http://extjs.com/

设计思想

组件化,推进RIA(Rich Internet Application)的应用。

优点

强大的UI,而且性能不错,这是其最大的优点。

速度快,管是UI还是其它模块。

100%面向对象和组件化的思想,一致的语法,全局的命名空间。

文档的完整,规范,方便。

核心的开发团队,Jack Slocum等。

活跃的社区,迅速增加的用户量。

模块化实现,可扩展性强。

所有的组件(widgets)都可直接使用,而无需进行设置(当然,用户可以选择重新配置)。

缺点

稍复杂。

为重量级的框架(包含大量UI),体积大。如果导入ext-all.js,压缩后也有近500k。

注意:EXT的商业使用:如果只是把extjs包含在自己的项目中,而且这个项目不是卖给用户做二次开发的工具箱,或组件库,就可以遵守LGPL协议免费使用;否则要付费。

总结

轻量级选择

轻量级的选择:主要是mootools和jquery,由于它们的设计思想的不同,jQuery是追求简洁和高效,Mootools除了追求这些目标以外,其核心在于面向对象,所以jQuery适合于快速开发,Mootools适合于稍大型和复杂的项目,其中需要面向对象的支持;另外,在Ajax的支持上,jQuery稍强一些;在Comet的支持上,jQuery有相关的插件,Mootools目前没有,但是Comet的核心在于服务器的支持,浏览器端的接口很简单,开发相关的插件很简单。

在面向对象的Javascript Library中,mootools逐渐战胜了prototype(体积大,面向对象的设计不合理等),也包括script.acul.ous(基于prototype,实际上就是prototype上的UI库)。

面向RIA的框架

考虑纯JavaScripty库,目前主要是Dojo和ExtJS(还有YUI)。Dojo更适合企业应用和产品开发的需要,因为离线存储、DataGrid、2D、3D图形、Chart、Comet等组件对于企业应用来说都是很重要的(当然这些组件还要等一段时间才能稳定下来)。例如,BEA基于Mashup技术开发的产品中已经使用了Dojo。

ExtJS:美观和"易用",并且足够强大。在对UI有比较大的需求时,是首选。

转载于:https://www.cnblogs.com/hhjiang14/p/4242921.html

借鉴一些关于js框架的东西相关推荐

  1. 基于 Egg.js 框架的 Node.js 服务构建之用户管理设计

    转载需经本人同意且标注本文原始地址:https://zhaomenghuan.github.io/blog/nodejs-eggjs-usersytem.html 前言 近来公司需要构建一套 EMM( ...

  2. 基于 Egg.js 框架的 Node.js 服务构建之用户管理设计 1

    前言 近来公司需要构建一套 EMM(Enterprise Mobility Management)的管理平台,就这种面向企业的应用管理本身需要考虑的需求是十分复杂的,技术层面管理端和服务端构建是架构核 ...

  3. Node.js 框架设计及企业 Node.js 基础建设相关讨论

    大家好,我是若川.19年我写的 lodash源码 文章投稿到海镜大神知乎专栏竟然通过了,后来20年海镜大神还star了我的博客,同时还转发了我的微博.时间真快啊.今天分享这篇Node.js的讨论. 2 ...

  4. 简述JQuery,Extjs,YUI,Prototype,Dojo等JS框架的区别和应用场景

    随着web2.0的彪悍发展,以及浏览器端所承载的工作越来越大(在不是很影响性能的情况下,开发者都习惯把能用浏览器做的事儿都让浏览器做,以减轻服务器的压力和带宽费用等).所以Javascript已经成为 ...

  5. css框架和js框架_优雅设计的顶级CSS框架

    css框架和js框架 Brief discussion: 简要讨论: Well, who doesn't want their website or web page to look attracti ...

  6. 知乎: 如何评价阿里开源的企业级 Node.js 框架 egg? #18

    知乎: 如何评价阿里开源的企业级 Node.js 框架 egg? #18 搬自我在知乎的问答: https://www.zhihu.com/question/50526101/answer/14495 ...

  7. 不要再使用JS框架了

    停止编写Javascript框架吧. Javascript框架就好像死亡和税收一样:终究不可避免它的存在.我确信如果我是那面墙上的一只苍蝇,每次有人开始一个新的网页项目时,第一个问题肯定是我们用的是哪 ...

  8. 主题:大胆预测下JS框架的走势(ZT)

    MooTools将在接下来的几年内像jQuery一样迅速走红 而jQuery则会慢慢销声匿迹 YUI将不尴不尬的活着,YUI 3.x将成为小部分人的玩物,大部分人的忽视物 Ext将在web app应用 ...

  9. Vue.js框架简介(1)

    1.Vue.js框架简介 Vue(读音 /vju:/,发音类似于 view)是一套用于构建用户界面的渐进式的JavaScript框架. 1.1.为什么要学习Vue.js 什么是Vue.js Vue.j ...

最新文章

  1. 工作在Amazon:为何晋升如此难?
  2. UA MATH566 统计理论1 充分统计量例题答案3
  3. 杨校老师课堂之Java类与对象、封装、构造方法
  4. 【机器学习】线性回归之Normal Equation(矩阵求导与线性代数视角)
  5. Exercise 12: Prompting People
  6. poj 3436 (最大流)
  7. 学成在线--17.我的课程
  8. [P2P技术]如何配置JXTA Shell(airclh)
  9. MySQL安装之没有配置向导
  10. 【转】基于SQL的Web系统安全防范——SQL注入漏洞
  11. 中国汽车改装行业运营模式分析及投资战略规划研究报告2021年版
  12. opencv之银行卡号识别
  13. 利用numpy自带的polyfit和polyval函数进行回归分析
  14. 查看硬盘序列号的方法 和查看设备序列号的方法
  15. android热成像模块,Thermal Camera
  16. 深入Golang Runtime之Golang GC的过去,当前与未来
  17. html网页肯德基设计代码作业,Illustrator设计一幅肯德基广告单页制作教程
  18. Programming Ruby 读书笔记(七)
  19. PSAM卡之常用APDU指令错误码【转】
  20. 测试过程中,遇到开发不认为是bug的bug,该怎么办

热门文章

  1. mysql contact 函数_mysql concat函数用法举例
  2. 7-4 宿舍谁最高? (20 分) map+结构体的应用
  3. 打造前端 Deepin Linux 工作环境——安装配置 atom 编辑器
  4. 考研数据结构学习笔记1
  5. Make my mind tobe a coder! Wa kakak
  6. 面试时应该采取什么方法才能克服紧张的情绪?
  7. PXE-MOF:EXITING INTEL PXE ROM是什么意思
  8. 第六届全国计算机学科博士后论坛,首届全国计算机学科博士后论坛在清华大学圆满举行...
  9. Qt:在QML中自定义贝塞尔动画曲线
  10. 资深架构师成长路线 -- 架构师筑基必备技能