目 录
前言
第 1 章 用 HTML 5 中的结构元素构建网站 /1
1.1 案例 1 :用 HTML 5 中的结构元素构建一个博客网站 /2
1.1.1 案例知识点 /2
1.1.2 博客首页的实现 /11
1.1.3 文章显示页面的实现 /30
1.2 案例 2 :用 HTML 5 中的结构元素构建一个企业网站 /39
1.2.1 首页的实现 /39
1.2.2 联系方式页面的实现 /52
1.3 本章小结 /55
第 2 章 在 Web 表单中使用 HTML 5/56
2.1 案例 3 :用结构元素制作 Web 应用程序中的菜单 /57
2.1.1 页面显示效果 /57
2.1.2 代码剖析 /58
2.2 案例 4 :综合运用 HTML 5、jQuery 与 ASP.NET 构建 Web 应用程序 /61
VIII
2.2.1 案例概述 /61
2.2.2 页面显示效果 /61
2.2.3 案例知识点 /63
2.2.4 代码剖析 /70
2.3 本章小结 /96
第 3 章 使用 canvas 元素绘制图形、图像与动画 /97
3.1 案例 5 :使用 canvas 元素绘制美丽的花朵 /98
3.1.1 案例概述 /98
3.1.2 页面显示效果 /98
3.1.3 案例知识点 /100
3.1.4 代码剖析 /103
3.2 案例 6 :使用 canvas 元素绘制指针式动画时钟 /106
3.2.1 案例概述 /106
3.2.2 页面显示效果 /106
3.2.3 案例知识点 /107
3.2.4 代码剖析 /108
3.3 案例 7 :使用 canvas 元素制作简单小游戏 /113
3.3.1 案例概述 /113
3.3.2 页面显示效果 /113
3.3.3 案例知识点 /115
3.3.4 代码剖析 /116
3.4 案例 8 :使用 canvas 元素绘制图像放大镜 /119
3.4.1 案例概述 /120
3.4.2 页面显示效果 /120
3.4.3 案例知识点 /120
3.4.4 代码剖析 /121
3.5 案例 9 :用动画的形式装载图像 /125
3.5.1 案例概述 /125
3.5.2 页面显示效果 /125
3.5.3 案例知识点 /128
3.5.4 代码剖析 /130
3.6 案例 10 :将彩色照片转换成黑白照片 /138
3.6.1 案例概述 /138
3.6.2 页面显示效果 /138
IX
3.6.3 案例知识点 /140
3.6.4 代码剖析 /141
3.7 本章小结 /143
第 4 章 文件 API 与拖放 API/145
4.1 案例 11 :在浏览器中预览客户端文件并上传 /146
4.1.1 案例概述 /146
4.1.2 页面显示效果 /146
4.1.3 案例知识点 /149
4.1.4 代码剖析 /151
4.2 案例 12 :使用 Canvas API、文件 API 与拖放 API 制作拼图游戏 /158
4.2.1 案例概述 /158
4.2.2 页面显示效果 /159
4.2.3 案例知识点 /162
4.2.4 代码剖析 /165
4.3 本章小结 /176
第 5 章 多媒体播放 /177
5.1 案例 13 :打造自己的网页视频播放器 /178
5.1.1 案例概述 /178
5.1.2 页面显示效果 /178
5.1.3 案例知识点 /181
5.1.4 代码剖析 /183
5.2 案例 14 :对视频使用实时回放功能 /191
5.2.1 案例概述 /191
5.2.2 页面显示效果 /191
5.2.3 代码剖析 /192
5.3 案例 15 :对视频使用截图功能 /195
5.3.1 案例概述 /195
5.3.2 页面显示效果 /195
5.3.3 案例知识点 /196
5.3.4 代码剖析 /196
5.4 案例 16 :打造自己的网页音频播放器 /199
5.4.1 案例概述 /199
X
5.4.2 页面显示效果 /199
5.4.3 案例知识点 /200
5.4.4 代码剖析 /201
5.5 本章小结 /206
第 6 章 本地存储 /207
6.1 案例 17 :制作 HTML 5 版本的日程提醒簿 /208
6.1.1 案例概述 /208
6.1.2 页面显示效果 /208
6.1.3 案例知识点 /209
6.1.4 代码剖析 /210
6.2 案例 18 :临时保存页面中的输入内容 /214
6.2.1 案例概述 /214
6.2.2 页面显示效果 /215
6.2.3 案例知识点 /216
6.2.4 代码剖析 /216
6.3 案例 19 :使用 HTML 5 制作 Web 应用程序的演示版 /218
6.3.1 案例概述 /218
6.3.2 页面显示效果 /218
6.3.3 案例知识点 /219
6.3.4 代码剖析 /222
6.4 案例 20 :使用客户端 session/232
6.4.1 案例概述 /232
6.4.2 页面展示效果 /232
6.4.3 案例知识点 /234
6.4.4 代码剖析 /235
6.5 案例 21 :将本地数据库中的数据提交到服务器端 /248
6.5.1 案例概述 /248
6.5.2 页面展示效果 /248
6.5.3 代码剖析 /249
6.6 案例 22 :制作可以离线使用的日程提醒簿 /256
6.6.1 案例概述 /256
6.6.2 页面显示效果 /256
6.6.3 案例知识点 /257
XI
6.6.4 代码剖析 /260
6.7 本章小结 /261
第 7 章 跨文档消息传输 /262
7.1 案例 23 :通过跨文档消息传输功能实现单点登录 /263
7.1.1 案例概述 /263
7.1.2 页面显示效果 /264
7.1.3 案例知识点 /268
7.1.4 代码剖析 /268
7.2 案例 24 :通过跨文档消息传输功能获取批量数据 /300
7.2.1 案例概述 /300
7.2.2 页面显示效果 /300
7.2.3 代码剖析 /301
7.3 本章小结 /310
第 8 章 利用 Web Workers 实现多线程处理 /312
8.1 案例 25 :在后台线程中实现对数据库的增删查改操作 /313
8.1.1 案例概述 /313
8.1.2 页面显示效果 /313
8.1.3 案例知识点 /315
8.1.4 代码剖析 /316
8.2 案例 26 :在后台线程中实现数据的批量插入 /334
8.2.1 案例概述 /334
8.2.2 代码剖析 /334
8.3 本章小结 /339
第 9 章 利用 Geolocation API 获取地理位置信息 /341
9.1 案例 27 :显示计算机或移动设备所在地的地图 /342
9.1.1 案例概述 /342
9.1.2 页面显示效果 /342
9.1.3 案例知识点 /343
9.1.4 代码剖析 /346
9.2 本章小结 /349
XII
第 10 章 使用 jWebSocket 框架开发 Socket 通信程序 /350
10.1 安装与运行 jWebSocket/351
10.1.1 安装 jWebSocket 服务器 /351
10.1.2 在其他服务器环境下运行 jWebSocket 服务器 /352
10.1.3 将 jWebSocket 服务器作为 Windows 的可执行文件 /354
10.1.4 将 jWebSocket 服务器作为 Windows 的服务 /355
10.1.5 jWebSocket Web 客户端 /355
10.2 创建第一个利用 jWebSocket 进行通信的 Web 页面 /357
10.3 创建 jWebSocket 服务器端的侦听器 /365
10.3.1 jWebSocket 的通信架构 /365
10.3.2 创建侦听器 /366
10.4 jWebSocket 中的令牌 /374
10.4.1 令牌的基本概念 /375
10.4.2 系统令牌 /376
10.5 jWebSocket 中服务器端的插件 /383
10.5.1 服务器端插件的基础知识 /383
10.5.2 创建自定义服务器端插件 /385
10.6 jWebSocket 中的通道 /393
10.7 案例 28 :利用 jWebSocket 服务器创建简单聊天室 /398
10.7.1 案例概述 /398
10.7.2 页面显示效果 /398
10.7.3 代码剖析 /401
10.8 本章小结 /412
第 11 章 RGraph 统计图制作插件 /414
11.1 概述 /415
11.1.1 HTML 5 版统计图插件的优越性 /415
11.1.2 使用 RGraph 插件 /415
11.1.3 使用服务器端数据 /416
11.2 绘制统计图时所用到的公共属性 /417
11.3 绘制柱状图 /422
11.3.1 绘制柱状图时所用到的属性 /422
11.3.2 示例程序 /425
XIII
11.3.3 使用 obj.getBar 方法 /426
11.3.4 绘制分组柱状图 /428
11.3.5 使用上下文菜单 /432
11.4 绘制折线图 /435
11.4.1 绘制折线图时所用到的属性 /435
11.4.2 绘制基本折线图 /439
11.4.3 使用 getPoint 方法 /441
11.4.4 在一个折线图中绘制多根折线 /444
11.4.5 绘制范围折线图 /446
11.4.6 在一个折线图中使用左右两根不同统计单位的垂直坐标轴 /448
11.4.7 在一个统计图中绘制柱状图与折线图 /450
11.4.8 绘制动态折线图 /452
11.5 绘制饼图 /455
11.5.1 绘制饼图时所用到的属性 /455
11.5.2 示例程序 /455
11.5.3 使用 getSegment 方法 /457
11.6 绘制横向柱状图 /461
11.6.1 绘制横向柱状图时所用到的属性 /461
11.6.2 示例程序 /463
11.6.3 绘制分组横向柱状图 /464
11.7 绘制雷达图 /466
11.7.1 绘制雷达图时所用到的属性 /466
11.7.2 示例程序 /467
11.8 增强用户体验 /468
11.8.1 通过拖曳来缩放统计图的尺寸 /468
11.8.2 制作工具条提示信息 /469
11.8.3 制作上下文菜单 /475
11.8.4 放大统计图 /476
11.8.5 允许用户注解统计图 /481
11.9 本章小结 /483
第 12 章 使用 WebGL 开发三维图形图像 /484
12.1 WebGL 概述 /485
12.1.1 WebGL 的基础知识 /485
XIV
12.1.2 进行 WebGL 开发之前的准备工作 /485
12.2 使用 WebGL 绘制三角形与矩形 /488
12.2.1 下载并使用脚本文件 /488
12.2.2 页面显示效果 /488
12.2.3 代码剖析 /488
12.3 使用颜色绘制彩色三角形与矩形 /507
12.3.1 画面式样 /507
12.3.2 代码剖析 /507
12.4 制作三维动画 /515
12.4.1 画面式样 /515
12.4.2 代码剖析 /515
12.5 制作三维物体 /520
12.5.1 画面式样 /520
12.5.2 代码剖析 /520
12.6 使用纹理 /528
12.6.1 画面式样 /528
12.6.2 代码剖析 /528
12.7 键盘输入与纹理过滤 /537
12.7.1 画面式样 /537
12.7.2 代码剖析 /538
12.8 本章小结 /545
附录 五大浏览器的最新版对 HTML 5 的支持情况 /546