根據Ext JS的構成體系全面系統地講解了其開發方法與技巧,每個知識點都輔之以翔實的案例,同時包含大量最佳實踐,適合系統學習和開發參考;宏觀上對Ext JS的整體架構進行了分析,微觀上則通過源代碼深刻揭示了Ext JS的工作機制與原理,對於想了解Ext JS工作原理和在開發中碰到疑難問題的讀者尤為有幫助。
目錄
前言
第1章 Ext JS 4開發入門
1.1 學習Ext JS必需的基礎知識
1.2 JSON概述
1.2.1 認識JSON
1.2.2 JSON的結構
1.2.3 JSON的例子
1.2.4 在JavaScript中使用JSON
1.2.5 在.NET中使用JSON
1.2.6 在Java中使用JSON
1.2.7 更多有關JSON的信息
1.3 Ext JS 4概述
1.4 Ext JS的開發工具的獲取、安裝與配置介紹
1.4.1 Ext Designer
1.4.2 在Visual Studio中實現智能提示
1.4.3 Spket
1.4.4 在Eclipse中實現智能提示
1.5 如何獲得幫助
1.6 本章小結
第2章 從「Hello World」開始
2.1 獲取Ext JS 4
2.2 配置使用Ext JS庫
2.3 編寫「Hello World」程序
2.4 關於Ext.onReady
2.5 關於Ext.BLANK_IMAGE_URL
2.6 關於字體
2.7 Ext JS 4語法
2.8 本地化
2.9 為本書示例准備一個模板
2.10 本章小結
第3章 調試工具及技巧
3.1 使用Firebug進行調試
3.2 在IE中調試
3.2.1 使用Debugbar和Companion.js調試
3.2.2 使用IEtester測試
3.2.3 在IE 8或IE 9中調試
3.3 在Chrome中調試
3.4 調試工具的總結
3.5 調試技巧
3.6 本章小結
第4章 Ext JS的基礎架構
4.1 Ext JS框架的命名空間:Ext
4.1.1 概述
4.1.2 apply和applyIf方法
4.1.3 不推薦的extend方法
4.1.4 數據及其類型檢測
4.1.5 其他的基礎方法
4.2 為框架順利運行提供支持
4.2.1 平台檢測工具:Ext.is
4.2.2 當前運行環境檢測工具:Ext.supports
4.3 Ext JS的靜態方法
4.3.1 概述
4.3.2 Ext.Object中的靜態方法
4.3.3 Ext.Function中的靜態方法
4.3.4 Ext.Array中的靜態方法
4.3.5 Ext.Error中的靜態方法
4.4 深入了解類的創建及管理
4.4.1 開始創建類
4.4.2 創建類的類:Ext.Class
4.4.3 所有繼承類的基類:Ext.Base
4.4.4 實現動態加載:Ext.Loader
4.4.5 管理類的類:Ext.ClassManager
4.4.6 類創建的總結
4.5 動態加載的路徑設置
4.6 綜合實例:頁面計算器
4.7 本章小結
第5章 Ext JS的事件及其應用
5.1概述
5.2瀏覽器事件
5.2.1 綁定瀏覽器事件的過程:Ext.EventManager
5.2.2 封裝瀏覽器事件:Ext.EventObject
5.2.3 移除瀏覽器事件
5.3 內部事件
5.3.1 內部事件對象:Ext.util.Event
5.3.2 為組件添加事件接口:Ext.util.Observable
5.3.3 為組件綁定事件
5.3.4 內部事件的觸發過程
5.3.5 移除事件
5.4 特定功能的事件對象
5.4.1 延時任務:Ext.util.DelayedTask
5.4.2 一般任務:Ext.util.TaskRunner與Ext.TaskManager
5.4.3 封裝好的單擊事件:Ext.util.ClickRepeater
5.5 鍵盤事件
5.5.1 為元素綁定鍵盤事件:Ext.util.KeyMap
5.5.2 鍵盤導航:Ext.util.KeyNav
5.6 綜合實例:股票數據的實時更新
5.7 本章小結
第6章 選擇器與DOM操作
6.1 Ext JS的選擇器:Ext.DomQuery
6.1.1 選擇器的作用
6.1.2 使用Ext.query選擇頁面元素
6.1.3 基本選擇符
6.1.4 屬性選擇符
6.1.5 CSS屬性值選擇符
6.1.6 偽類選擇符
6.1.7 擴展選擇器
6.1.8 Ext.DomQuery的使用方法
6.1.9 Ext JS選擇器的總結
6.2 獲取單一元素:Ext.dom.Element
6.2.1 從錯誤開始
6.2.2 使用Ext.get獲取元素
6.2.3 使用Ext.fly獲取元素
6.2.4 使用Ext.getDom獲取元素
6.2.5 獲取元素的總結
6.3 元素生成器:Ext.dom.Helper
6.3.1 概述
6.3.2 使用createHtml或markup方法生成HTML代碼
6.3.3 使用createDOM方法生成DOM對象
6.3.4 使用createTemplate方法創建模板
6.3.5 Helper對象的使用方法
6.4 元素的操作
6.5 獲取元素集合:Ext.CompositeElementLite與Ext.CompositeElement
6.5.1 使用Ext.select獲取元素集合
6.5.2 Ext.dom.CompositeElement與Ext.dom.CompositeElementLite的區別
6.5.3 操作元素集合
6.6 綜合實例:可折疊的面板Accordion
6.7 本章小結
第7章 數據交互
7.1 數據交互基礎
7.1.1 Ajax概述
7.1.2 封裝Ajax:Ext.data.Connection與Ext.Ajax
7.1.3 使用Ajax
7.1.4 跨域獲取數據:Ext.data.JsonP
7.1.5 為Element對象提供加載功能:Ext.ElementLoader
7.1.6 為組件提供加載功能:Ext.ComponentLoader
7.2 代理
7.2.1 代理概述
7.2.2 基本的代理:Ext.data.proxy.Proxy
7.2.3 進行批量操作:Ext.data.Batch與Ext.data.Operation
7.2.4 服務器端代理:Ext.data.proxy.Server
7.2.5 使用Ajax處理數據的代理:Ext.data.proxy.Ajax與Ext.data.proxy.Rest
7.2.6 跨域處理數據的代理:Ext.data.proxy.JsonP
7.2.7 為Ext.Direct服務的代理:Ext.data.proxy.Direct
7.2.8 客戶端代理:Ext.data.proxy.Client
7.2.9 從變量中提取數據的代理:Ext.data.proxy.Memory
7.2.10 使用瀏覽器存儲的代理:Ext.data.WebStorageProxy、Ext.data.SessionStorageProxy和Ext.data.proxy.LocalStorage
7.3 讀取和格式化數據
7.3.1 概述
7.3.2 數據的轉換過程:Ext.data.reader.Xml、Ext.data.reader.Json和Ext.data.reader.Array
7.3.3 Reader對象的配置項
7.3.4 格式化提交數據:Ext.data.writer.Writer、Ext.data.writer.JSON和Ext.data.writer.Xml
7.3.5 Writer對象的配置項
7.4 數據模型
7.4.1 概述
7.4.2 數據類型及排序類型:Ext.data.Types與Ext.data.SortTypes
7.4.3 數據模型的骨架——字段:Ext.data.Field
7.4.4 數據集:Ext.util.AbstractMixedCollection與Ext.util.MixedCollection
7.4.5 數據驗證及錯誤處理:Ext.data.validations與Ext.data.Errors
7.4.6 模型的關系:Ext.data.Association、Ext.data.HasManyAssociation和Ext.data.BelongsToAssociation
7.4.7 管理數據模型:Ext.AbstractManager與Ext.ModelManager
7.4.8 定義數據模型:Ext.data.Model
7.4.9 數據模型的定義過程
7.4.10 數據模型的創建
7.4.11 數據模型的配置項、屬性和方法
7.5 Store
7.5.1 概述
7.5.2 Store對象的實例化過程
7.5.3 TreeStore對象的實例化過程
7.5.4 Ext.data.Store加載數據的方法
7.5.5 Ext.data.TreeStore加載數據的方法
7.5.6 Store的配置項
7.5.7 Store的分頁
7.5.8 Store的排序:Ext.util.Sorter與Ext.util.Sortable
7.5.9 Store的過濾:Ext.util.Filter
7.5.10 Store的分組:Ext.util.Grouper
7.5.11 樹節點:Ext.data.NodeInterface與Ext.data.Tree
7.5.12 Store的方法
7.5.13 Store的事件
7.5.14 Store管理器:Ext.data.StoreManager
7.6 綜合實例
7.6.1 遠程讀取JSON數據
7.6.2 讀取XML數據
7.6.3 Store的數據操作
7.7 本章小結
……
第8章 模板與組件基礎
第9章 容器、面板、布局和視圖
第10章 重構后的Grid
第11章 與Grid同源的樹
第12章 表單
第13章 窗口
第14章 按鈕、菜單與工具條
第15章 圖形與圖表
第16章 其他組件及實用功能
第17章 可簡化通信的Ext.Direct
第18章 動畫功能
第19章 拖放功能
第20章 擴展與插件
第21章 主題開發
第22章 MVC應用架構
附錄 簡寫類名與Ext JS類名對照表
第1章 Ext JS 4開發入門
1.1 學習Ext JS必需的基礎知識
1.2 JSON概述
1.2.1 認識JSON
1.2.2 JSON的結構
1.2.3 JSON的例子
1.2.4 在JavaScript中使用JSON
1.2.5 在.NET中使用JSON
1.2.6 在Java中使用JSON
1.2.7 更多有關JSON的信息
1.3 Ext JS 4概述
1.4 Ext JS的開發工具的獲取、安裝與配置介紹
1.4.1 Ext Designer
1.4.2 在Visual Studio中實現智能提示
1.4.3 Spket
1.4.4 在Eclipse中實現智能提示
1.5 如何獲得幫助
1.6 本章小結
第2章 從「Hello World」開始
2.1 獲取Ext JS 4
2.2 配置使用Ext JS庫
2.3 編寫「Hello World」程序
2.4 關於Ext.onReady
2.5 關於Ext.BLANK_IMAGE_URL
2.6 關於字體
2.7 Ext JS 4語法
2.8 本地化
2.9 為本書示例准備一個模板
2.10 本章小結
第3章 調試工具及技巧
3.1 使用Firebug進行調試
3.2 在IE中調試
3.2.1 使用Debugbar和Companion.js調試
3.2.2 使用IEtester測試
3.2.3 在IE 8或IE 9中調試
3.3 在Chrome中調試
3.4 調試工具的總結
3.5 調試技巧
3.6 本章小結
第4章 Ext JS的基礎架構
4.1 Ext JS框架的命名空間:Ext
4.1.1 概述
4.1.2 apply和applyIf方法
4.1.3 不推薦的extend方法
4.1.4 數據及其類型檢測
4.1.5 其他的基礎方法
4.2 為框架順利運行提供支持
4.2.1 平台檢測工具:Ext.is
4.2.2 當前運行環境檢測工具:Ext.supports
4.3 Ext JS的靜態方法
4.3.1 概述
4.3.2 Ext.Object中的靜態方法
4.3.3 Ext.Function中的靜態方法
4.3.4 Ext.Array中的靜態方法
4.3.5 Ext.Error中的靜態方法
4.4 深入了解類的創建及管理
4.4.1 開始創建類
4.4.2 創建類的類:Ext.Class
4.4.3 所有繼承類的基類:Ext.Base
4.4.4 實現動態加載:Ext.Loader
4.4.5 管理類的類:Ext.ClassManager
4.4.6 類創建的總結
4.5 動態加載的路徑設置
4.6 綜合實例:頁面計算器
4.7 本章小結
第5章 Ext JS的事件及其應用
5.1概述
5.2瀏覽器事件
5.2.1 綁定瀏覽器事件的過程:Ext.EventManager
5.2.2 封裝瀏覽器事件:Ext.EventObject
5.2.3 移除瀏覽器事件
5.3 內部事件
5.3.1 內部事件對象:Ext.util.Event
5.3.2 為組件添加事件接口:Ext.util.Observable
5.3.3 為組件綁定事件
5.3.4 內部事件的觸發過程
5.3.5 移除事件
5.4 特定功能的事件對象
5.4.1 延時任務:Ext.util.DelayedTask
5.4.2 一般任務:Ext.util.TaskRunner與Ext.TaskManager
5.4.3 封裝好的單擊事件:Ext.util.ClickRepeater
5.5 鍵盤事件
5.5.1 為元素綁定鍵盤事件:Ext.util.KeyMap
5.5.2 鍵盤導航:Ext.util.KeyNav
5.6 綜合實例:股票數據的實時更新
5.7 本章小結
第6章 選擇器與DOM操作
6.1 Ext JS的選擇器:Ext.DomQuery
6.1.1 選擇器的作用
6.1.2 使用Ext.query選擇頁面元素
6.1.3 基本選擇符
6.1.4 屬性選擇符
6.1.5 CSS屬性值選擇符
6.1.6 偽類選擇符
6.1.7 擴展選擇器
6.1.8 Ext.DomQuery的使用方法
6.1.9 Ext JS選擇器的總結
6.2 獲取單一元素:Ext.dom.Element
6.2.1 從錯誤開始
6.2.2 使用Ext.get獲取元素
6.2.3 使用Ext.fly獲取元素
6.2.4 使用Ext.getDom獲取元素
6.2.5 獲取元素的總結
6.3 元素生成器:Ext.dom.Helper
6.3.1 概述
6.3.2 使用createHtml或markup方法生成HTML代碼
6.3.3 使用createDOM方法生成DOM對象
6.3.4 使用createTemplate方法創建模板
6.3.5 Helper對象的使用方法
6.4 元素的操作
6.5 獲取元素集合:Ext.CompositeElementLite與Ext.CompositeElement
6.5.1 使用Ext.select獲取元素集合
6.5.2 Ext.dom.CompositeElement與Ext.dom.CompositeElementLite的區別
6.5.3 操作元素集合
6.6 綜合實例:可折疊的面板Accordion
6.7 本章小結
第7章 數據交互
7.1 數據交互基礎
7.1.1 Ajax概述
7.1.2 封裝Ajax:Ext.data.Connection與Ext.Ajax
7.1.3 使用Ajax
7.1.4 跨域獲取數據:Ext.data.JsonP
7.1.5 為Element對象提供加載功能:Ext.ElementLoader
7.1.6 為組件提供加載功能:Ext.ComponentLoader
7.2 代理
7.2.1 代理概述
7.2.2 基本的代理:Ext.data.proxy.Proxy
7.2.3 進行批量操作:Ext.data.Batch與Ext.data.Operation
7.2.4 服務器端代理:Ext.data.proxy.Server
7.2.5 使用Ajax處理數據的代理:Ext.data.proxy.Ajax與Ext.data.proxy.Rest
7.2.6 跨域處理數據的代理:Ext.data.proxy.JsonP
7.2.7 為Ext.Direct服務的代理:Ext.data.proxy.Direct
7.2.8 客戶端代理:Ext.data.proxy.Client
7.2.9 從變量中提取數據的代理:Ext.data.proxy.Memory
7.2.10 使用瀏覽器存儲的代理:Ext.data.WebStorageProxy、Ext.data.SessionStorageProxy和Ext.data.proxy.LocalStorage
7.3 讀取和格式化數據
7.3.1 概述
7.3.2 數據的轉換過程:Ext.data.reader.Xml、Ext.data.reader.Json和Ext.data.reader.Array
7.3.3 Reader對象的配置項
7.3.4 格式化提交數據:Ext.data.writer.Writer、Ext.data.writer.JSON和Ext.data.writer.Xml
7.3.5 Writer對象的配置項
7.4 數據模型
7.4.1 概述
7.4.2 數據類型及排序類型:Ext.data.Types與Ext.data.SortTypes
7.4.3 數據模型的骨架——字段:Ext.data.Field
7.4.4 數據集:Ext.util.AbstractMixedCollection與Ext.util.MixedCollection
7.4.5 數據驗證及錯誤處理:Ext.data.validations與Ext.data.Errors
7.4.6 模型的關系:Ext.data.Association、Ext.data.HasManyAssociation和Ext.data.BelongsToAssociation
7.4.7 管理數據模型:Ext.AbstractManager與Ext.ModelManager
7.4.8 定義數據模型:Ext.data.Model
7.4.9 數據模型的定義過程
7.4.10 數據模型的創建
7.4.11 數據模型的配置項、屬性和方法
7.5 Store
7.5.1 概述
7.5.2 Store對象的實例化過程
7.5.3 TreeStore對象的實例化過程
7.5.4 Ext.data.Store加載數據的方法
7.5.5 Ext.data.TreeStore加載數據的方法
7.5.6 Store的配置項
7.5.7 Store的分頁
7.5.8 Store的排序:Ext.util.Sorter與Ext.util.Sortable
7.5.9 Store的過濾:Ext.util.Filter
7.5.10 Store的分組:Ext.util.Grouper
7.5.11 樹節點:Ext.data.NodeInterface與Ext.data.Tree
7.5.12 Store的方法
7.5.13 Store的事件
7.5.14 Store管理器:Ext.data.StoreManager
7.6 綜合實例
7.6.1 遠程讀取JSON數據
7.6.2 讀取XML數據
7.6.3 Store的數據操作
7.7 本章小結
……
第8章 模板與組件基礎
第9章 容器、面板、布局和視圖
第10章 重構后的Grid
第11章 與Grid同源的樹
第12章 表單
第13章 窗口
第14章 按鈕、菜單與工具條
第15章 圖形與圖表
第16章 其他組件及實用功能
第17章 可簡化通信的Ext.Direct
第18章 動畫功能
第19章 拖放功能
第20章 擴展與插件
第21章 主題開發
第22章 MVC應用架構
附錄 簡寫類名與Ext JS類名對照表
序
近一段時間,隨着HTML 5和CSS 3的逐步升溫,瀏覽器大戰進行得如火如荼,而開發人員最關心的是JavaScript框架在HTML 5和CSS 3的大潮下會走向何方。
隨着iPhone 4S的出現,手機大戰也進行得如火如荼。目前的情況是,不但手機系統進行着混戰,手機應用的框架也在進行混戰。
應該說Ext公司在這方面觸覺是很敏銳的,它選擇合並,將公司更改為Sencha,並通過Sencha加入到手機框架大戰中。本以為Ext JS會止步於Ext JS 3.3,想不到Sencha在手機框架中站穩腳跟后,2011年又推出了Ext JS 4.0,對這個頗受歡迎的框架進行了更多的革新,加入了很多HTML 5和CSS 3的元素。
隨着iPhone 4S的出現,手機大戰也進行得如火如荼。目前的情況是,不但手機系統進行着混戰,手機應用的框架也在進行混戰。
應該說Ext公司在這方面觸覺是很敏銳的,它選擇合並,將公司更改為Sencha,並通過Sencha加入到手機框架大戰中。本以為Ext JS會止步於Ext JS 3.3,想不到Sencha在手機框架中站穩腳跟后,2011年又推出了Ext JS 4.0,對這個頗受歡迎的框架進行了更多的革新,加入了很多HTML 5和CSS 3的元素。
網路書店
類別
折扣
價格
-
新書87折$621