http://blog.csdn.net/snowwhite1129/article/category/558996
什麼是ExtJS
ExtJS可以用來開發RIA也即富客戶端的AJAX應用,是一個用javascript寫的,主要用於創建前端用戶界面,是一個與後臺技術無關的前端ajax框架。
發展至今, Ext除YUI外還支持Jquery、Prototype等的多種JS底層庫,讓大家自由地選擇。該框架完全基於純Html/CSS+JS技術,提供豐富的跨瀏覽器UI組件,靈活採用JSON/XML數據源開發,使得服務端表示層的負荷真正減輕,從而達到客戶端的MVC應用!
Ext從2.x開始收費,這給他的應用前景帶來一些問題。
ExtJS一些概念
一、理解Html DOM、Ext Element及Component
它們分別一一層層向高處抽象。不管怎樣,EXT代碼都是最後以HTML代碼形式呈現給瀏覽器的,而每一個HTML頁面都有一個層次分明的DOM樹模型,瀏覽器中的所有內容都有相應的DOM對象,動態改變頁面的內容,正是通過使用腳本語言來操作DOM對象實現。這便是對HTML的對一次抽象,當然爲的是更好的操作瀏覽器內容。Ext Element則是對Html DOM的再一次封裝(當然各種JS框架封裝方式不同,所具有的封閉方法也不盡一致),爲的是進一步簡易方便操作Html DOM。Component各種Ext Element的組合再封裝便構成了Component。Ext
Element是Ext的底層API,主要是由Ext或自定義組件調用的,而DOM是W3C標準定義的原始API,Ext的Element通過操作DOM 來實現頁面的效果顯示。
對於終端用戶來說,僅僅有Element是不夠的,比如用戶要顯示一個表格、要顯示一棵樹、要顯示一個彈出窗口等。因此,除了Element以外,Ext 還建立了一系列的客戶端界面組件Component,我們在編程時,只要使用這些組件Componet即可實現相關數據展示及交互等,而 Component是較高層次的抽象,每一個組件在渲染render的時候,都會依次通過Element、DOM來生成最終的頁面效果。
]]
var view=new Ext.Viewport();//創建了一個組件Component
view.el.setOpacity(.5);//調用Element的setOpacity方法
view.el.dom.innerHTML="Hello Ext";//通過Element的dom屬性操作DOM對象
再看下面的代碼:
var win=new Ext.Window({id:"win1",title:"我的窗口",width:200,height:200});
win.show();
var c=Ext.getCmp("win1");//得到組件win
var e=Ext.get("win1");//根據id得到組件win相應的Element
var dom=Ext.getDom("win1");//得到id爲win1的DOM節點
二、
面板Panel
佈局 Layout
組件 Component
渲染 Render
與Html、CSS是從服務器下載而來不同,完全是由ExtJS的引擎動態生成而來。所以ExtJS的渲染實際上是一個動態生成的過程,而非靜態載入的過程。
窗口Window
對話框Dialog