《深入淺出Ext JS(第2版)》一書升級版的大綱

王軍花發表於2012-02-24

大家好,《深入淺出Ext JS(第2版)》要出升級版了!

新版主要是針對Ext JS 4做更新和完善。下面是新版的目錄初稿(其中主要新增了“物件導向的系統設計 ”、“MVC三層結構”和“drawing”等內容),歡迎大家給出寶貴意見,提出可行建議,以便完善內容,為讀者呈現一本好書!期待您的留言與反饋!

第1章 EXT概述

1.1 EXT版本變遷
1.2 下載EXT釋出包
1.3 如何檢視EXT自帶的API和示例
1.4 為什麼有些示例必須放在伺服器上才能看到效果
1.5 Hello World

1.5.1 直接使用下載的釋出包
1.5.2 在專案中使用EXT

1.6 為什麼頁面提示“找不到圖片”
1.7 輔助開發

1.7.1 除錯工具Firebug
1.7.2 開發利器Spket

1.8 小結

第2章 基礎概念

2.1 物件導向的系統設計

2.2 MVC三層架構
2.3 容器與佈局策略
2.4 核心元件

2.4.1 Ext.Component
2.4.2 Ext.BoxComponent
2.4.3 Ext.Container
2.4.4 Ext.Panel
2.4.5 Ext.TabPanel
2.4.6 列表檢視
2.4.7 高階按鈕

2.5 統一的抽象資料層
2.6 事件模型

2.6.1 自定義事件
2.6.2 瀏覽器事件
2.6.3 Ext.lib.Event
2.6.4 Ext.util.Observable
2.6.5 Ext.EventManager
2.6.6 Ext.EventObject

2.7 使用Flash報表

2.7.1 柱狀圖
2.7.2 橫向柱狀圖
2.7.3 折線
2.7.4 餅狀圖
2.7.5 柱狀堆疊圖
2.7.6 橫向柱狀堆疊圖
2.7.7 混合圖
2.7.8 drawing

2.8 主題

2.8.1 新主題Accessibility

2.9 解決記憶體洩露

2.9.1 解決DOM洩露
2.9.2 解決JavaScript引擎造成的記憶體洩露

2.10 核心元件優化

2.10.1 優化佈局
2.10.2 重構事件管理器
2.10.3 提高Ext Core的靈活性

2.11 小結

第3章 表格控制元件

3.1 表格的特性簡介

3.2 製作一個簡單的表格

3.3 表格常用功能詳解

3.3.1 部分屬性功能
3.3.2 自主決定每列的寬度
3.3.3 讓表格支援按列排序
3.3.4 解決中文排序

3.3.5 顯示日期型別資料

3.4 表格渲染

3.5 給表格的行和列設定顏色

3.6 自動顯示行號和核取方塊

3.6.1 自動顯示行號

3.6.2 核取方塊

3.7 選擇模型

3.8 表格檢視——Ext.grid.GridView

3.9 表格分頁

3.9.1 表格分頁
3.9.2 通過後臺指令碼獲得分頁資料
3.9.3 分頁工具條顯示在表格的頂部
3.9.4 讓Ext支援前臺分頁

3.10 後臺排序

3.11 多重排序

3.12 可編輯表格控制元件——EditorGrid

3.12.1 製作一個簡單的EditorGrid
3.12.2 新增一行資料
3.12.3 儲存修改結果
3.12.4 驗證EditorGrid中的資料
3.12.5 限制輸入資料的型別

3.13 屬性表格控制元件——PropertyGrid

3.13.1 PropertyGrid
3.13.2 只能看不能動的PropertyGrid
3.13.3 強制對name列排序
3.13.4 根據name獲得value
3.13.5 自定義編輯器

3.14 分組表格控制元件——Group

3.14.1 分組表格簡介
3.14.2 分組表格檢視Ext.grid.GroupingView

3.15 可拖放的表格

3.15.1 拖放改變表格的大小
3.15.2 在同一個表格裡拖放
3.15.3 表格之間的拖放
3.15.4 表格與樹之間的拖放

3.16 表格與右鍵選單

3.17 行編輯器

3.18 進度條分頁元件

3.19 快取式表格檢視

3.20 分組表頭

3.21 鎖定列

3.22 樹形表格

3.23 高階表格查詢

3.24 如何讓表格所有的列都支援排序

3.25 修改表格的ColumnModel和Store

3.26 動態為ds新增引數baseParams

3.27 小結

第4章 表單與輸入控制元件

4.1 製作表單

4.2 FormPanel和BasicForm詳解

4.3 EXT支援的控制元件

4.3.1 控制元件繼承圖
4.3.2 表單控制元件
4.3.3 基本輸入控制元件Ext.form.Field
4.3.4 文字輸入控制元件Ext.form.TextField
4.3.5 多行文字輸入控制元件Ext.form.TextArea
4.3.6 日期輸入控制元件Ext.form.DateField
4.3.7 時間輸入控制元件Ext.form.TimeField
4.3.8 線上編輯器Ext.form.HtmlEditor
4.3.9 隱藏域Ext.form.Hidden
4.3.10 下拉輸入框Ext.form.TriggerField
4.3.11 使用input type=”image”

4.4 使用表單提交資料

4.4.1 EXT預設的提交形式
4.4.2 使用HTML原始的提交形式
4.4.3 單純Ajax

4.5 資料校驗

4.5.1 輸入不能為空
4.5.2 最大長度和最小長度
4.5.3 藉助vtype
4.5.4 自定義校驗規則
4.5.5 算不上校驗的NumberField
4.5.6 使用後臺返回的校驗資訊

4.6 表單佈局

4.6.1 預設的平鋪佈局
4.6.2 平行分列布局
4.6.3 在佈局中使用fieldset
4.6.4 在fieldset中使用佈局
4.6.5 自定義佈局

4.7 ComboBox詳解

4.7.1 ComboBox簡介
4.7.2 將select轉換成ComboBox
4.7.3 ComboBox結構詳解
4.7.4 ComboBox讀取遠端資料
4.7.5 ComboBox的高階配置
4.7.6 監聽使用者選擇的資料
4.7.7 使用本地資料實現省、市、縣級聯
4.7.8 使用後臺資料實現省、市、縣級聯
4.7.9 多選框和ItemSelector擴充套件以及示例

4.8 核取方塊和單選框

4.8.1 核取方塊
4.8.2 單選框
4.8.3 CheckboxGroup和RadioGroup元件

4.9 檔案上傳

4.10 自動把資料填充到表單中

4.11 組合表單控制元件

4.12 滑動條表單控制元件

4.12.1 為滑動條指定多個滑塊

4.13 小結

第5章 樹形結構

5.1 TreePanel的基本使用

5.1.1 建立一棵樹
5.1.2 為樹生枝展葉
5.1.3 樹形的配置
5.1.4 使用TreeLoader獲得資料
5.1.5 讀取本地JSON資料
5.1.6 與struts2進行整合
5.1.7 使用JSP提供後臺資料
5.1.8 XmlTreeLoader擴充套件

5.2 樹的事件

5.3 右鍵選單

5.4 修改節點的預設圖示

5.5 從節點彈出對話方塊

5.6 節點提示資訊

5.7 為節點設定超連結

5.8 直接修改樹節點名稱

5.9 樹形的拖放

5.9.1 節點拖放的3種形式
5.9.2 葉子不能append
5.9.3 判斷拖放的目標
5.9.4 樹之間的拖放

5.10 樹形過濾器TreeFilter

5.11 利用TreeSorter對樹進行排序

5.12 樹形節點檢視——Ext.tree.TreeNodeUI

5.13 表格與樹形的結合——Ext.ux.tree.ColumnTree

5.14 如何選中樹中的某個節點

5.15 重新整理樹的所有節點

5.16 如何取得JSON中自定義的屬性

5.17 小結

第6章 彈出視窗

6.1 Ext.MessageBox

6.1.1 Ext.MessageBox.alert()
6.1.2 Ext.MessageBox.confirm()
6.1.3 Ext.messageBox.prompt()

6.2 對話方塊的更多配置

6.2.1 可以輸入多行的輸入框
6.2.2 自定義對話方塊的按鈕
6.2.3 進度條
6.2.4 動畫效果

6.3 Ext.Window的常用屬性

6.3.1 建立視窗
6.3.2 視窗的最大化和最小化
6.3.3 視窗的隱藏與撤銷
6.3.4 防止視窗超出瀏覽器
6.3.5 設定視窗中的按鈕
6.3.6 視窗的其他配置選項

6.4 視窗分組

6.5 向視窗中放入各種控制元件

6.5.1 在視窗中加入表格
6.5.2 在視窗中加入表單
6.5.3 複雜佈局

6.6 Ext.Window中的closeAction

6.7 小結

第7章 佈局

7.1 佈局的用途

7.2 最簡單的佈局——FitLayout

7.3 常用的邊框佈局——BorderLayout

7.3.1 設定子區域的大小
7.3.2 使用split並限制它的範圍
7.3.3 子區域的展開和摺疊

7.4 製作伸縮選單的佈局——Accordion

7.5 實現操作嚮導的佈局——CardLayout

7.6 控制位置和大小的佈局——AnchorLayout和AbsoluteLayout

7.7 表單專用的佈局——FormLayout

7.8 分列式的佈局——ColumnLayout

7.9 表格狀的佈局——TableLayout

7.10 與佈局相關的其他知識

7.10.1 超類Ext.Container的公共配置與xtype的概念
7.10.2 layout的超類Ext.layout.ContainerLayout
7.10.3 不指定任何佈局時會發生的情況
7.10.4 使用Viewport對整個頁面進行佈局
7.10.5 使用巢狀實現複雜佈局

7.11 BoxLayout

7.12 TabPanel

7.12.1 標籤皮膚的滾動選單
7.12.2 豎直分組的標籤皮膚

7.13 豎直佈局

7.14 遠端讀取元件配置

7.15 佈局瀏覽器

7.16 小結

第8章 工具條和選單

8.1 簡單選單

8.2 向選單中新增分隔線

8.3 多級選單

8.4 高階選單

8.4.1 多選選單和單選選單
8.4.2 日期選單
8.4.3 顏色選單
8.4.4 在選單中新增其他控制元件
8.4.5 使用Ext.menu.MenuMgr統一管理選單

8.5 工具條元件詳解

8.5.1 Ext.Toolbar.Button
8.5.2 Ext.Toolbar.TextMenu
8.5.3 Ext.Toolbar.Spacer
8.5.4 Ext.Toolbar.Separator
8.5.5 Ext.Toolbar.Fill
8.5.6 Ext.SplitButton
8.5.7 為工具條新增HTML標籤
8.5.8 為工具條新增輸入控制元件

8.6 分頁工具條

8.6.1 Ext.PagingToolbar的基本用法
8.6.2 向Ext.PagingToolbar新增按鈕元件

8.7 右鍵彈出選單

8.8 處理工具條溢位

8.9 工具條中的分組按鈕

8.10 更多工具條外掛

8.11 狀態列

8.12 小結

第9章 資料儲存與傳輸

9.1 Ext.data命名控制元件下常用元件簡介

9.2 Ext.data.Connection

9.3 Ext.data.Record

9.4 Ext.data.Store

9.4.1 基本應用
9.4.2 對資料進行排序
9.4.3 從store中獲取資料
9.4.4 更新store中的資料
9.4.5 載入及顯示資料
9.4.6 其他功能

9.5 常用proxy

9.5.1 MemoryProxy
9.5.2 HttpProxy
9.5.3 ScriptTagProxy

9.6 常用Reader

9.6.1 ArrayReader
9.6.2 JsonReader
9.6.3 XmlReader

9.7 高階store

9.8 EXT中的Ajax

9.8.1 最容易看到的Ext.Ajax
9.8.2 Ext.lib.Ajax是更底層的封裝

9.9 關於scope和createDelegate()

9.10 DWR與EXT整合

9.10.1 在EXT中直接使用DWR
9.10.2 DWRProxy
9.10.3 DWRTreeLoader
9.10.4 DWRProxy和ComboBox

9.11 localXHR支援本地使用Ajax

9.12 介紹Ext Direct

9.12.1 介紹Ext Direct
9.12.2 東西Ext Direct的原理
9.12.3 •使用directjngine支援Ext Direct

9.13 完全支援REST

9.14 小結

第10章 使用者擴充套件與外掛

10.1 介紹使用者擴充套件

10.2 編寫使用者擴充套件所需的基礎知識

10.2.1 繼承模型
10.2.2 瞭解Component的生命週期

10.3 編寫自定義使用者擴充套件

10.4 介紹EXT的外掛體系

10.5 常用擴充套件元件(一)UploadDialog

10.6 常用擴充套件元件(二)ManagedIFrame

10.7 小結

第11章 拖放

11. 1 拖放簡介

11. 2 拖放的簡單應用

11. 3 拖放元件體系

11. 4 拖放的事件

11.5 高階拖放

11.5.1 基礎(Basic)
11.5.2 控制器柄(Handle)
11.5.3 總在最上面(On Top)
11.5.4 代理(Proxy)
11.5.5 分組(Group)
11.5.6 網格(Grid)
11.5.7 拖動圓形(Circle)
11.5.8 拖動範圍(Region)

11.6 小結

第12章 實用工具

12.1 EXT提供的常用函式

12.1.1 onReady函式
12.1.2 get函式
12.1.3 query函式和select函式
12.1.4 encode函式和decode函式
12.1.5 extend函式
12.1.6 apply函式和applyIf函式
12.1.7 namespace函式
12.1.8 Ext.isEmpty函式
12.1.9 Ext.each函式
12.1.10 Ext.DomQuery

12.2 使用DomHelper和Template動態生成HTML

12.2.1 使用DomHelper生成小片段
12.2.2 Ext.DomHelper.applyStyles函式
12.2.3 Template(模板)
12.2.4 Ext.DomHelper.createTemplate函式
12.2.5 複雜模板XTemplate

12.3 用Ext.Utils.CSS切換主題

12.4 懸停提示

12.4.1 初始化
12.4.2 註冊提示
12.4.3 標籤提示
12.4.4 全域性配置
12.4.5 個體配置

12.5 使用Ext.state儲存狀態

12.6 fx實現的動畫效果

12.7 區域性更新網頁內容

12.8 使用Ext.util.Format對資料進行格式化

12.8.1 操作字串
12.8.2 操作日期
12.8.3 控制判斷
12.8.4 轉換數字

12.9 使用Ext.util.CSS管理CSS樣式

12.10 使用Ext.util.ClickRepeater處理點選事件

12.11 使用Ext.util.DelayedTask延時執行函式

12.12 使用Ext.util.TaskRunner執行迴圈任務

12.13 混合型集合Ext.util.MixedCollection

12.13.1 MixedCollection的基本操作
12.13.2 向MixedCollection中新增資料
12.13.3 刪除MixedCollection中的資料
12.13.4 修改MixedCollection中的資料
12.13.5 讀取MixedCollection中的資料
12.13.6 對MixedCollection中的資料執行復雜的查詢操作
12.13.7 複製MixedCollection中的資料
12.13.8 使用key:value的方式操作MixedCollection中的資料
12.13.9 MixedCollection中的事件

12.14 使用Ext.util.TextMetrices獲得文字所佔的高度和寬度

12.15 Ext.KeyNav處理導航按鈕

12.16 Ext.KeyMap為物件繫結按鍵功能

12.17 擴充套件

12.17.1 擴充套件Date
12.17.2 擴充套件String
12.17.3 擴充套件Function
12.17.4 擴充套件Number
12.17.5 擴充套件Array

12.18 門戶元件Ext.ux.Portal

12.19 桌面Ext.Desktop

12.20 自定義編輯器

12.21 EXT core

12.21.1 adapter
12.21.2 core
12.21.3 data
12.21.4 util
12.21.5 擴充套件例項

12.22 為DataView新增動畫變換效果

12.23 國際化

12.24 Spotlight示例

12.25 Ext.History元件

12.26 GMapPanel擴充套件

12.27 小結

第13章 一個完整的EXT應用

13.1 確定整體佈局

13.2 使用HTML和CSS設定靜態資訊

13.3 對學生資訊進行資料建模

13.4 在頁面中顯示學生資訊列表

13.5 新增表單編輯學生資訊

13.6 為表單新增提交時間

13.7 清空表單資訊

13.8 刪除指定的學生資訊

13.9 在表格和表格之間進行資料互動

13.10 提升載入速度

13.10.1 對JavaScript進行壓縮混淆
13.10.2 使用客戶端快取
13.10.3 使用GZIP壓縮

13.11 小結

第14章 複雜例項

14.1 VIP客戶統計系統

14.2 Tracker任務跟蹤系統

14.3 此處新增一個使用MVC的例子

14.4 小結

附錄A EXT常見問題

附錄B EXT對AIR的支援

相關文章