第一篇 JavaScript實戰篇
第1章 JavaScript概述
1.1 認識JavaScript
1.1.1 瀏覽器戰爭
1.1.2 寄生語言
1.1.3 DHTML、DOM和W3C
1.1.4 動態語言和靜態語言
1.2 配置JavaScript開發環境
1.2.1 EditPlus
1.2.2 Adobe Dreamweaver
1.2.3 Sublime Text
1.2.4 JetBrains WebStorm
1.2.5 Aptana Studio
1.3 在Web頁麵中使用JavaScript
1.3.1 直接內嵌JavaScript代碼
1.3.2 引用JavaScript文件
1.3.3 讓收藏夾做更多事情
1.4 高效率的開發
1.4.1 熟悉語法
1.4.2 自動完成
1.4.3 使用成熟框架和便捷工具
1.5 相關參考
第2章 用JavaScript驗證錶單
2.1 最簡單的錶單驗證——禁止空白的必填項目
2.1.1 最簡單錶單的HTML結構
2.1.2 綁定驗證功能
2.1.3 綁定驗證的另一種方式
2.2 處理各種類型的錶單元素
2.2.1 input、textarea、hidden和button
2.2.2 checkbox、radio和select
2.3 用正則來校驗復雜的格式要求
2.3.1 認識JavaScript正則
2.3.2 JavaScript正則符號及其說明
2.3.3 正則驗證輸入郵箱
2.4 改善用戶體驗
2.4.1 什麼是用戶體驗
2.4.2 錶單的用戶體驗改善
2.5 相關參考
第3章 用JavaScript實現照片展示
3.1 功能設計
3.1.1 HTML、CSS和JavaScript的分層關係
3.1.2 照片展示功能設計
3.2 照片加載與定位
3.2.1 HTML代碼
3.2.2 CSS代碼
3.2.3 JavaScript代碼
3.3 響應鼠標動作
3.3.1 響應小照片單擊動作
3.3.2 響應小照片上一組或下一組單擊動作
3.4 響應鍵盤動作
3.4.1 常見鍵盤按鍵對應的ASCII碼值
3.4.2 響應鍵盤動作
3.5 代碼分離帶來的紅利
3.6 相關參考
第4章 AJAX——無刷新的用戶體驗
4.1 認識AJAX
4.1.1 AJAX是技術不是編程語言
4.1.2 同步與異步
4.1.3 AJAX與JSON
4.1.4 AJAX是如何工作的
4.2 XMLHttpRequest對象的常見方法和屬性
4.2.1 XMLHttpRequest對象方法
4.2.2 XMLHttpRequest對象屬性
4.3 檢查待注冊的用戶名是否存在
4.3.1 客戶端進行檢測
4.3.2 服務器端獲取數據
4.4 用Ajax提交數據給服務器
4.4.1 客戶端部分
4.4.2 服務端部分
4.5 相關參考
第5章 瀑布流布局
5.1 瀑布流簡介
5.1.1 瀑布流是不是萬金油
5.1.2 穿過瀑布流看水簾洞
5.2 固定列寬的簡單瀑布流實現
5.2.1 簡單的HTML結構
5.2.2 讓瀑布流動起來
5.3 非固定列寬的復雜瀑布流
5.3.1 非固定列寬瀑布流的爭議
5.3.2 用Masonry實現任意非固定列寬瀑布流
5.4 延遲加載圖片
5.4.1 延遲加載是何方神聖
5.4.2 延遲加載運用實例
5.5 相關參考
第6章 用戶控件的構造——目錄樹視圖
6.1 功能設計
6.2 樹視圖的最簡化實現
6.2.1 樹視圖的HTML結構和數據結構
6.2.2 用遞歸最簡化顯示樹
6.3 類和抽象
6.3.1 基於對象(Object-Based)和麵嚮對象(Object-Oriented)
6.3.2 用JavaScript創建一個類
6.3.3 靜態屬性、方法和動態屬性、方法
6.3.4 JavaScript繼承
6.3.5 私有屬性和方法
6.3.6 抽象
6.4 復雜的樹視圖
6.4.1 閉包隔離變量汙染
6.4.2 省去new關鍵字調用控件
6.4.3 豐富控件方法
6.5 相關參考
第二篇 HTML 5+CSS 3實戰篇
第7章 HTML 5概述
7.1 什麼是HTML 5
7.1.1 差點夭摺的HTML 5
7.1.2 HTML 5的前世今生
7.1.3 HTML 5理念
7.2 HTML 5的新特性
7.2.1 語義化
7.2.2 CSS 3
7.2.3 本地存儲/離綫應用
7.2.4 音頻/視頻多媒體
7.2.5 畫布Canvas
7.2.6 本地文件訪問
7.2.7 開放字體格式WOFF
7.2.8 地理位置
7.2.9 微數據
7.2.10 XMLHttpRequest Level 2
7.2.11 新的HTML Forms
7.2.12 其他特性及未來發展
7.3 有哪些瀏覽器支持HTML 5
7.4 如何書寫HTML 5
7.4.1 HTML 5和XHTML的對比
7.4.2 HTML 5書寫的誤區
7.5 相關參考
第8章 煥然一新的錶單
8.1 E-mail和URL類型的輸入元素
8.1.1 各瀏覽器內核一覽
8.1.2 各瀏覽器對E-mail和URL類型的支持情況
8.1.3 全球頂級域名
8.1.4 E-mail類型的使用
8.1.5 URL類型的使用
8.2 數值輸入
8.2.1 各瀏覽器對number類型的支持情況
8.2.2 number類型的屬性與使用
8.3 日期選擇器
8.3.1 各瀏覽器對日期選擇器的支持情況
8.3.2 日期選擇器類型與使用
8.4 用datalist來實現自動提示
8.4.1 各瀏覽器對datalist的支持情況
8.4.2 各瀏覽器datalist的效果對比
8.4.3 datalist讓input自動提示更智能
8.5 相關參考
第9章 在Web頁麵中輕鬆控製多媒體視頻和音樂
9.1 在頁麵中插入視頻和音頻
9.1.1 容器和編解碼器
9.1.2 使用HTML 5 Video和Audio API的好處
9.1.3 瀏覽器支持性檢測
9.1.4 使用video/audio元素
9.1.5 使用source元素來兼容
9.2 video/audio元素的屬性
9.2.1 通過HTML設置的屬性
9.2.2 通過JavaScript設置的屬性
9.3 video/audio元素的事件
9.3.1 video/audio元素的主要事件
9.3.2 設置當前播放位置
9.4 video/audio元素的方法
9.4.1 通過JavaScript控製的方法
9.4.2 鼠標懸停播放,移開暫停
9.5 綜閤應用——打造屬於自己的視頻播放器
9.5.1 界麵設計
9.5.2 CSS 3+HTML布局
9.5.3 用JavaScript控製播放器
9.6 相關參考
第10章 用CSS 3畫一個哆啦A夢
10.1 CSS 3簡介
10.1.1 CSS 3曆史情況
10.1.2 CSS 3的支持情況
10.2 陰影和文本陰影
10.2.1 陰影(box-shadow)
10.2.2 文本陰影(text-shadow)
10.3 圓角
10.3.1 圓角(border-radius)屬性
10.3.2 圓角變圓與半圓
10.4 漸變
10.4.1 綫性漸變
10.4.2 放射漸變
10.5 綜閤應用——畫一個哆啦A夢
10.5.1 頭部和臉部
10.5.2 脖子和鈴鐺
10.5.3 身體和四肢
10.5.4 讓眼睛動起來
10.6 相關參考
第11章 酷炫的CSS 3動畫效果 ——3D鏇轉方塊
11.1 文本描邊和文本填充色
11.1.1 文本描邊(text-stroke)
11.1.2 文本填充(text-fill-color)
11.2 變形和變形原點
11.2.1 變形(transform)
11.2.2 變形原點(transform-origin)
11.3 簡單應用——飛行鏇轉文本
11.3.1 過渡動畫(transition)
11.3.2 自定義動畫(animation)和@keyframes
11.3.3 飛行鏇轉的文本
11.4 綜閤應用——3D鏇轉方塊
11.5 相關參考
第12章 一個可以離綫的內容管理係統
12.1 功能設計
12.2 Web儲存和應用緩存
12.2.1 本地存儲(LocalStorage)
12.2.2 會話存儲(SessionStorage)
12.2.3 應用程序緩存
12.2.4 搭建支持應用緩存的服務器
12.2.5 神奇的manifest file文件清單
12.3 HTML 5本地存儲
12.3.1 Web IndexedDB
12.3.2 Web Sql Database
12.4 編寫內容管理係統
12.4.1 可離綫的HTML、JS和CSS
12.4.2 添加數據
12.4.3 列錶和查詢數據
12.4.4 更新數據
12.4.5 刪除數據
12.4.6 前端交互
12.5 相關參考
第13章 SVG動畫
13.1 什麼是SVG
13.1.1 SVG的曆史
13.1.2 SVG的優缺點
13.1.3 SVG的Hello world
13.1.4 SVG的調用方式
13.2 SVG形狀
13.2.1 矩形(rect)
13.2.2 圓形(circle)
13.2.3 橢圓(ellipse)
13.2.4 綫(line)
13.2.5 摺綫(polyline)
13.2.6 多邊形(polygon)
13.2.7 路徑(path)
13.3 SVG濾鏡
13.3.1 高斯模糊濾鏡(feGaussianBlur)
13.3.2 色彩轉換濾鏡(feColorMatrix)
13.3.3 位移濾鏡(feOffset)
13.4 SVG漸變
13.4.1 綫性漸變(linearGradient)
13.4.2 放射漸變(radialGradient)
13.5 製作簡單的SVG動畫——太陽係
13.5.1 SVG繪製的太陽和地球公轉軌跡
13.5.2 貼圖地球和地月係統
13.5.3 太陽係
13.6 相關參考
第三篇 HTML 5 Canvas實戰篇
第14章 Canvas的初步應用 ——再畫一個哆啦A夢
14.1 什麼是Canvas
14.1.1 Canvas起源
14.1.2 Canvas的支持情況
14.1.3 Canvas優缺點及與SVG的對比
14.1.4 Canvas與JavaScript
14.1.5 Canvas的發展
14.1.6 Canvas標簽的使用
14.2 繪製形狀和文字
14.2.1 直綫(lineTo)
14.2.2 矩形(rect)
14.2.3 圓(arc)
14.2.4 弧和圓角(arcTo)
14.2.5 貝塞爾麯綫quadraticCurveTo
14.2.6 繪製文本(fillText)和strokeText
14.3 顔色、風格和陰影
14.3.1 綫性漸變(createLinearGradient)
14.3.2 放射漸變(createRadialGradient)
14.3.3 陰影
14.4 再畫一個哆啦A夢
14.4.1 準備工作
14.4.2 繪製頭和臉
14.4.3 繪製眼睛和鼻子
14.4.4 繪製嘴巴和鬍須
14.5 相關參考
第15章 Canvas的高級應用 ——製作飛行遊戲
15.1 轉換
15.1.1 放大和縮小
15.1.2 平移和鏇轉
15.1.3 矩陣轉換
15.2 閤成
15.2.1 用Photoshop控製圖形閤成
15.2.2 使用Canvas控製圖形閤成
15.3 碰撞檢測
15.3.1 圓形碰撞檢測
15.3.2 矩形碰撞檢測
15.4 讓遊戲動起來
15.4.1 打飛機遊戲設計
15.4.2 移動的星空
15.4.3 加載資源
15.4.4 我方戰機、敵機和子彈
15.4.5 讓遊戲動起來
15.5 相關參考
第16章 Canvas的另類應用 ——壓縮和解壓
16.1 繪製圖片
16.1.1 繪製外部載入的圖片
16.1.2 Canvas給視頻加字幕
16.2 像素級操作
16.2.1 反轉顔色-底片效果
16.2.2 灰度控製——黑白灰效果
16.2.3 透明度控製
16.2.4 倒影
16.3 實現壓縮解壓功能
16.3.1 載入位圖
16.3.2 壓縮位圖
16.3.3 保存到本地
16.4 相關參考
第四篇 jQuery實戰篇
第17章 jQuery簡介
17.1 什麼是jQuery
17.1.1 jQuery的曆史
17.1.2 為什麼要使用jQuery
17.2 編寫jQuery代碼
17.2.1 下載jQuery
17.2.2 簡單應用jQuery
17.2.3 調試jQuery程序
17.3 基於jQuery的UI插件
17.3.1 基於jQuery的擴展——jQuery UI插件
17.3.2 下載jQuery UI插件
17.3.3 簡單應用jQuery UI插件
17.3.4 其他UI框架
17.4 相關參考
第18章 用動態效果來響應瀏覽者
18.1 jQuery庫基礎
18.1.1 jQuery庫的核心方法——$()
18.1.2 jQuery庫延遲等待加載模式
18.1.3 jQuery對象與DOM對象間的轉換
18.2 基礎選擇器
18.2.1 簡單選擇器
18.2.2 進階選擇器
18.2.3 高級選擇器
18.3 過濾選擇器
18.3.1 jQuery所支持的過濾器
18.3.2 頁麵中的經典導航條
18.4 操作DOM對象
18.4.1 jQuery關於元素的操作
18.4.2 關於錶的經典效果
18.4.3 jQuery關於節點的操作
18.4.4 超級鏈接提示效果
18.4.5 圖片預覽效果
18.5 響應事件
18.5.1 綁定和刪除事件
18.5.2 jQuery所支持的事件和事件類型
18.5.3 錶單動態效果
18.6 實現動態效果
18.6.1 jQuery庫所支持的動畫方法
18.6.2 實現可摺疊的列錶
18.6.3 淡入淡齣效果
18.7 相關參考
第19章 用戶交互操作、進度條和滑動條美化頁麵
19.1 頁麵中的交互操作
19.1.1 jQuery UI所支持的拖動組件
19.1.2 jQuery UI所支持的拖放組件
19.1.3 模擬Windows係統“迴收站”
19.2 頁麵中的進度條效果
19.2.1 jQuery UI所支持的進度條工具集
19.2.2 實現進度條效果
19.3 頁麵中滑動條效果
19.3.1 jQuery UI所支持的滑動條工具集
19.3.2 實現圖片滑塊滾動條效果
19.3.3 實現簡單顔色調色器
19.4 相關參考
第20章 用工具集實現酷炫的頁麵
20.1 實現“手風琴”效果
20.1.1 jQuery UI所支持的摺疊麵闆工具集
20.1.2 實現經典的導航菜單
20.2 設計頁麵中各種對話框效果
20.2.1 jQuery UI所支持的對話框工具集
20.2.2 實現彈齣和確認信息對話框效果
20.3 處理頁麵中的日期
20.3.1 jQuery UI所支持的日期選擇器工具集
20.3.2 實現日期輸入框
20.3.3 實現選取時間段功能
20.4 實現幻燈和分頁效果
20.4.1 jQuery UI所支持的選項卡工具集
20.4.2 經典的選項卡效果
20.4.3 實現幻燈效果
20.4.4 實現分頁效果
20.5 相關參考
第五篇 Node.js 實戰篇
第21章 Node.js簡介
21.1 什麼是Node.js
21.1.1 Node.js是平颱
21.1.2 Node.js不是萬能的
21.2 獲取、安裝和配置Node.js
21.2.1 Node.js獲取
21.2.2 Node.js的安裝
21.2.3 Node.js的配置
21.3 Node.js與其他服務器腳本語言的比較
21.4 Node.js與客戶端JavaScript腳本的比較
21.5 相關參考
第22章 構造一個最簡單的Web服務器
22.1 Node.js中腳本文件的組織
22.1.1 CommonJS規範
22.1.2 Node.js中的模塊
22.1.3 HTTP協議
22.2 建立服務、路徑處理與響應
22.2.1 用6行代碼創建的Web服務器
22.2.2 讓Web服務器響應和處理不同路徑
22.3 異步與文件處理
22.3.1 智能的404提示
22.3.2 文件格式MIME協議
22.3.3 響應不同類型的文件
22.4 處理文件上傳
22.4.1 安裝並使用Node.js第三方模塊
22.4.2 用node-formidable處理上傳圖片
22.5 相關參考
第23章 基於Express框架的Http服務器
23.1 引入Express框架
23.1.1 Express與Connect
23.1.2 在Node.js環境下安裝Express
23.1.3 用Express搭建簡單Web應用
23.2 Express的程序控製
23.2.1 模闆引擎ejs
23.2.2 中間件(middleware)
23.3 Express的請求解析
23.3.1 路由routes
23.3.2 Request對象
23.4 Express的響應控製
23.4.1 wirte、end、send輸齣響應到客戶端
23.4.2 JSON、JSONP輸齣響應到客戶端
23.4.3 設置cookie
23.4.4 其他響應控製
23.5 相關參考
第24章 構造一個基於Socket的聊天係統
24.1 建立Socket服務器
24.1.1 安裝Socket.IO
24.1.2 聊天室服務端
24.2 HTML 5中的Web Socket
24.2.1 Web Socket協議
24.2.2 Nginx對Web Socket的支持
24.2.3 Web Socket常用API
24.3 在Node.js中操作數據庫
24.3.1 操作MS SQL Server
24.3.2 操作MySQL
24.3.3 操作MongoDB
24.4 完善聊天係統
24.4.1 聊天室客戶端
24.4.2 Socket.IO 常見API
24.5 相關參考
· · · · · · (
收起)