第1章HTML5簡介
1.1 HTML簡史
1.2為什麼需要HTML5
1.2.1問題
1.2.2解決問題
1.3 HTML5的新特性
1.3.1結構和內容元素
1.3.2表單
1.3.3媒體元素
1.4剖析HTML5頁面的結構
1.5對HTML5的誤解
1.5.1 CSS3誤解
1.5.2 Web Fonts誤解
1.5.3 Geolocation誤解
1.5.4 SVG誤解
1.5.5 Web Storage誤解
1.5.6 Web Workers誤解
1.5.7 WebSocket誤解
1.6小結
第2章JavaScript基礎
2.1 JavaScript概述
2.2 jQuery
2.2.1 jQuery是什麼
2.2.2為什麼要使用它
2.2.3這是在誤導你嗎
2.2.4是否不需要理解純JavaScript
2.2.5如何使用jQuery
2.3在HTML頁面上添加JavaScript
2.4在頁面加載之後運行JavaScript
2.4.1錯誤的方法(window.onload事件)
2.4.2冗長的方法(DOM)
2.4.3簡單的方法(jQuery方法)
2.5變量與數據類型
2.5.1變量
2.5.2數據類型
2.6條件語句
2.6.1 if語句
2.6.2比較運算符
2.6.3在if語句中進行多重布爾值檢查
2.6.4 else和else if語句
2.7函數
2.7.1創建函數
2.7.2調用函數
2.8對象
2.8.1什麼是對象
2.8.2創建和使用對象
2.9數組
2.9.1創建數組
2.9.2訪問和修改數組
2.10循環
2.11定時器
2.11.1設置一次性定時器
2.11.2取消一次性定時器
2.11.3設置重複定時器
2.11.4取消重複定時器
2.12 DOM
2.12.1 HTML網頁示例
2.12.2使用純JavaScript訪問DOM
2.12.3使用jQuery訪問DOM
2.12.4操作DOM
2.13小結
第3章Canvas基礎知識
3.1認識canvas元素
3.2 2D渲染上下文
3.2.1坐標系統
3.2.2訪問2D渲染上下文
3.3繪製基本圖形和線條
3.3.1線條
3.3.2圓形
3.4樣式
3.5繪製文本
3.6擦除Canvas
3.7使Canvas填滿瀏覽器窗口
3.8小結
第4章Canvas高級功能
4.1保存和恢復繪圖狀態
4.1.1畫布繪圖狀態是什麼
4.1.2保存繪圖狀態
4.1.3恢復繪圖狀態
4.1.4保存和恢復多個繪圖狀態
4.2變形
4.2.1平移
4.2. 2縮放
4.2.3旋轉
4.2.4變換矩陣
4.3合成
4.3.1全局阿爾法值
4.3.2合成操作
4.4陰影
4.5漸變
4.6複雜路徑
4.7將畫布導出為圖像
4.8小結
第5章處理圖像和視頻
5.1加載圖像
5.2調整和裁剪圖像
5.2.1調整圖像大小
5.2.2裁剪圖像
5.2.3陰影
5.3圖像變形
5.3.1平移
5.3.2旋轉
5.3.3縮放與翻轉
5.4訪問像素值
5.5從零繪製圖像
5.5.1隨機繪製像素
5.5.2創建馬賽克效果
5.6基 本圖像效果
5.6.1反轉顏色
5.6.2灰度
5.6.3像素化
5.7視頻處理
5.7.1創建HTML5video元素
5.7.2使用HTML5video API
5.7.3設置畫布
5.8小結
第6章製作動畫
6.1畫布中的動畫
6.2創建動畫循環
6.2.1循環
6.2.2更新、清除、繪製
6.3記憶要繪製的形狀
6.3.1錯誤的方法
6.3.2正確的方法
6.3.3隨機產生形狀
6.4改變方向
6.5圓周運動
6.5.1三角函數
6.5.2綜合運用
6.6反彈
6.7小結
第7章實現高級動畫
7.1物理常識
7.1.1什麼是物理學
7.1.2物理學對創建動畫有何作用
7.1. 3基本概念
7.1.4牛頓運動定律
7.2運用物理知識創建動畫
7.2.1準備工作
7.2.2速度
7.2.3添加邊界
7.2.4加速度
7.2.5摩擦力
7.3碰撞檢測
7.3.1碰撞檢測
7.3.2彈開物體
7.3.3動量守恆
7.4小結
第8章太空保齡球遊戲
8.1遊戲概述
8.2核心功能
8.2.1構建HTML代碼
8.2.2美化界面
8.2.3編寫JavaScript代碼
8.3激活用戶界面
8.4創建遊戲對象
8.4.1創建平台
8.4.2創建小行星
8.4.3創建玩家使用的小行星
8.4.4更新UI
8.5讓對象運動起來
8.6檢測用戶交互
8.6.1建立事件監聽器
8.6.2選中玩家使用的小行星
8.6.3增加力度
8.6.4讓玩家使用的小行星動起來
8.6.5可視化用戶輸入
8.7重置player
8.8玩家獲勝
8.8.1更新分數
8.8.2從平台上刪除小行星
8.9小結
第9章躲避小行星遊戲
9.1遊戲概述
9.2核心功能
9.2.1創建HTML代碼
9.2.2美化界面
9.2.3編寫JavaScript代碼
9.3創建遊戲對象
9.3.1創建小行星
9.3.2創建玩家使用的火箭
9.4檢測鍵盤輸入
9.4.1鍵值
9.4.2鍵盤事件
9.5讓對象運動起來
9.6假造橫向捲軸效果
9.6.1循環利用小行星
9.6.2添加邊界
9.6.3讓玩家保持連續移動
9.7添加聲音
9.8結束遊戲
9.8.1計分系統
9.8 .2殺死玩家
9.9增加遊戲難度
9.10小結
第10章未來的Canvas
10.1 Canvas與SVG
10.1.1可訪 問性
10.1.2位圖與矢量圖
10.2 Canvas與Flash
10.2.1 JavaScript開發人員可以藉鑑Flash
10.2. 2 Canvas沒有像Flash那樣用戶友好的編輯器
10.3 Canvas與性能
10.4 Canvas遊戲和動畫庫
10.5三維圖形
10.6與外圍設備交互
10.7用WebSocket技術構建多人遊戲
10.8靈感
10.8.1 Sketch Out遊戲
10.8.2 Z- Type遊戲
10.8.3 Sinuous遊戲
10.9小結和結束語