任何一种技术框架,都不能为了掌握它而掌握,必然是有一些其它框架无法比拟的特性,才会吸引我们去研究。
说起javascript,其实也零零散散写了六七年了:起初是使用alert、setTimeout之类的函数实现简单的页面特效,那时还可以肆无忌惮的使用document.all等对象;后来随着03、04年firefox和xhtml的迅速推广,客观上要求程序员要具备书写标准的跨平台的脚本的能力,于是开始更多的采用DOM技术编写javascript;紧接着就是05年,ajax风潮席卷了整个IT界,它不但把javascript的地位提升到了很高的层次,还促进了C/S、B/S程序技术的大融合,此外,MVC的思想也深入人心。
由于更多的人力投入到javascript阵营中,催生了很多开源平台的诞生与繁荣,如开山鼻祖prototype,以及后来的dojo、jQuery等等。商业力量也试图占领这块市场,例如Yahoo的YUI(包括后来的YUI-ext),Google的GWT等等。这些开源库都有各自的特点,但始终无法在文档成熟度、表现层展现能力等方面达到整体的高度。直到今年YUI-ext与jQuery进行了整合,并推出了extjs,才比较好的弥补了这些“短板”。目前稳定版本是1.1.1,2.0 ALPHA也刚刚推出,预计又会有大幅度的提升。
在工作中使用javascript,无非是要尽可能又快又好的完成PM制定的各项功能特性,例如进行友好的表单验证,拖动/隐藏界面中的一部分内容等等。工期常常是比较紧的,调试也相对繁琐,且要支持各种主流浏览器,那么开发过程客观上就要依赖于稳定的代码库。我打算使用这两种库的主要原因有以下几点:
-
jQuery可以彻底实现JS与HTML的分离。我们只需要这样写:
$(document).ready = function(){ //... }
就可以代替body标签中的onload。从而所有的JS代码都可以从HTML中移出,非常便于维护。
-
extjs的前端展现比较丰富。例如增加一个toolbar,里面放一个menu,我们只需要这样写:
var dateMenu = new Ext.menu.DateMenu({ handler : function(dp, date){ Ext.Msg.alert('Date Selected', 'You chose ' + date.format('M j, Y')); } }); var menu = new Ext.menu.Menu({id: mainMenu, items: [{text: 'Choose a Date', menu: dateMenu}]}); var tb = new Ext.Toolbar('toolbar'); tb.add({text: 'menu', menu: menu});
就可以实现一个下拉菜单效果,其中有一个功能是选择日期。当选中一个日期后,会弹出一个提示框,显示刚才选中的日期。
- JS开发对浏览器透明。
在书写大部分代码的时候,无需考虑太多浏览器的差异,例如创建xmlhttp对象,例如绑定事件,等等。这样可以把精力真正放到业务的实现上去。
新时代快要到来了
web时代的vb和delphi就要产生了
赞赞
越来越觉得我完全不是一个学IT的(其实一直都这么觉得)……
赞赞
感觉很好
赞赞
EXT中文网
http://www.ajaxjs.com
赞赞
多谢,这个网站很好,我一直在看。
ps:在google上搜“extjs jquery”,我这篇文章排名第一了,很是惊奇,呵呵。
赞赞
好久不关注新的 Ajax 框架了,落伍了
赞赞
可以关注一下Extjs,比较像bindows的思路了。
赞赞
今天只是看了一下其界面的执行效果和执行效率,感觉不错的样子,回头再仔细看看
赞赞
正在学习jquery 对extjs不怎么了解 不知道和jquery比有什么样的优缺点呢
赞赞
jquery主要是在选择器、ajax、事件挂载等方面有优势。extjs除以上优势外,还为表现层提供了许多组件。另,extjs和jquery可以混合使用,如果不需要实现华丽的拖动、表格等效果,或者打算自行实现的话,还是建议只用jquery。
赞赞
我还是喜欢jquery, 不过有实又实在需要extjs那些成熟的组件.
赞赞