新書推薦:
《
可转债——新手理财的极简工具
》
售價:HK$
65.0
《
新加坡教育:神话与现实
》
售價:HK$
96.3
《
“口袋中的世界史”第一辑·冷战中的危机事件
》
售價:HK$
291.2
《
绝美的奥伦堡蕾丝披肩编织
》
售價:HK$
177.0
《
狂飙年代:18世纪俄国的新文化和旧文化(第二卷)
》
售價:HK$
177.0
《
万有引力书系 纳粹亿万富翁 德国财富家族的黑暗历史
》
售價:HK$
109.8
《
中国常见植物野外识别手册:青海册
》
售價:HK$
76.2
《
三星堆对话古遗址(从三星堆出发,横跨黄河流域,长江流域,对话11处古遗址,探源多元一体的中华文明)
》
售價:HK$
87.4
|
編輯推薦: |
HTML5并非是在旧的标准上添加的几个新标签和新特性,它是现代Web的基石,能够实现交互式服务、单页UI、交互式游戏、复杂业务应用。凭借对标准驱动的移动应用开发的支持,以及各种强大特性(如本地存储、WebSockets、优秀的音频及视频API、使用CSS3的新布局方案,乃至SVG和Canvas技术),HTML5迎来了它的黄金时代。
《HTML5实战》完整地介绍了使用HTML5技术进行Web开发的各项内容,通过真实的示例及代码探讨了HTML5规范。诚如书名所示,本书内容注重实务指导,读者通过亲自实践必定能使网站与应用达到前所未有的效果?
本书重点介绍HTML5的新特性,并假定读者熟悉标准HTML。
要下载本书代码可以访问 manning.comHTML5inAction
|
內容簡介: |
作为Web开发领域里发展最快的技术之一,HTML5凭借其动态特性及跨平台特性日益成为程序设计领域备受推崇的语言。作为一门新兴语言,HTML5的应用范畴远远不止移动浏览器和桌面浏览器这两个方面,本书将带读者了解一个全方位的HTML5。
《HTML5实战》是一本全面介绍运用HTML5开发Web应用的书籍,包括了数据存储、通信以及如何创建视频游戏等诸多内容。全书分为四个部分,第一部分介绍HTML5语法及本书所涉及的全部API;第二部分介绍基于浏览器的应用;第三部分介绍交互式图像、媒体及游戏;第四部分是附录内容,深入介绍一些本书的主题,提供了一系列重要的参考资科。
《HTML5实战》内容结构清晰,示例完整,适合于对JavaScript和HTML语法有一定基础的Web开发人员阅读。通过阅读本书,你将能够创建更加真实、全功能的Web应用。
|
關於作者: |
Rob Crowther Web开发者、知名博主,Hello!HTML5 & CSS3一书的作者。Joe Lennon 企业移动应用开发者。Ash Blue 多个优秀交互式项目的开发者。Greg Wanish 独立Web开发者及电子商务开发者。
|
目錄:
|
目录
第一部分 简介
第1章 HTML5:从文档到应用的转变 3
1.1 探索标记语言:HTML5速览 4
1.1.1 HTML5文档的基本结构 4
1.1.2 使用新的语义元素 6
1.1.3 使用ARIA角色来增强可访问性 8
1.1.4 IE6~IE8的支持情况 9
1.1.5 HTML5所引入的新表单特性 10
1.1.6 进度条、度量器和可折叠内容 12
1.2 标记:附加的Web规范 14
1.2.1 微数据 15
1.2.2 CSS3 16
1.2.3 JavaScript和DOM 17
1.3 HTML5的DOM API 18
1.3.1 Canvas 19
1.3.2 音频与视频 19
1.3.3 拖放功能 20
1.3.4 跨文档通信、服务器端发送的事件以及WebSockets 21
1.3.5 文档编辑 23
1.3.6 Web存储 24
1.3.7 离线Web应用 25
1.4 其他API和规范 26
1.4.1 地理定位API(Geolocation API) 26
1.4.2 索引数据库API(IndexedDB API) 27
1.4.3 文件API、文件阅读器API、文件编辑器API与文件系统API 28
1.4.4 可伸缩矢量图形 29
1.4.5 Web Graphics Library 30
1.5 小结 31
第二部分 基于浏览器的应用
第2章 创建表单:输入小部件、数据绑定以及数据验证 36
2.1 表单的功能概述与所需知识 37
2.2 构建表单用户界面 39
2.2.1 定义表单的基本HTML文档结构 39
2.2.2 使用表单输入类型email和tel,以及输入属性autofocus、required和placeholder 40
2.2.3 使用表单输入属性required 43
2.2.4 使用number输入类型与min、max、data-*输入属性,以及元素来构建具备计算功能的表单 44
2.2.5 使用表单输入类型month和pattern输入属性 47
2.2.6 提交还是保存?由用户来选择——formnovalidate和formaction输入类型 49
2.3 计算金额总计,显示表单输出结果 51
2.3.1 构建计算函数 52
2.3.2 获取data-*属性的值 54
2.4 利用约束验证API来检查表单输入数据 56
2.4.1 利用setCustomValidity方法和ValidationMessage属性创建自定义验证测试和错误消息 57
2.4.2 利用invalid事件来侦测失败的表单验证 59
2.4.3 利用CSS3伪类来设置无效元素的样式 59
2.5 为不支持HTML5相关特性的浏览器提供回退方案 61
2.5.1 利用Modernizr侦测特性并加载外部资源 61
2.5.2 使用polyfill和Modernizr来弥补缺陷 62
2.5.3 不借助约束验证API实现验证 63
2.6 小结 66
第3章 文件编辑和管理:富文本格式、文件存储、拖放 69
3.1 Super HTML5 Editor:应用概述、必备知识以及初始步骤 70
3.1.1 定义HTML文档结构 71
3.1.2 用JavaScript来实现视图导航与状态管理 74
3.2 富文本编辑与地理定位 76
3.2.1 使用designMode使HTML页面可编辑 76
3.2.2 利用execCommand实现富文本编辑控件 78
3.2.3 利用Geolocation API来定位用户当前位置 80
3.3 在本地管理文件:File System API、Quota Management API、File API与File Writer API 82
3.3.1 创建应用文件系统 83
3.3.2 从文件系统中获取文件列表 85
3.3.3 文件的加载、查看、编辑以及删除 86
3.3.4 创建新文件 88
3.3.5 利用File Writer API来保存文件 92
3.4 添加交互性的拖放功能 94
3.4.1 通过拖入操作将文件导入到应用中 94
3.4.2 通过拖出操作将文件从应用导出 95
3.5 小结 96
第4章 传递消息:HTML5的脚本通信技术 98
4.1 服务器发送事件(SSE) 99
4.1.1 一个简单的SSE聊天应用 99
4.1.2 何时使用SSE 108
4.2 使用WebSocket创建一种实时通信Web应用 108
4.2.1 应用概述及关键知识点 109
4.2.2 利用Node.js创建WebSocket 111
4.2.3 构建计划板应用 113
4.3 客户端上的通信 121
4.3.1 利用postMessage实现跨域通信 121
4.3.2 利用跨文档通信组合应用 122
4.4 小结 124
第 5 章 移动应用:客户端存储与离线执行 127
5.1 My Tasks应用的概述、关键知识点及首要步骤 128
5.1.1 定义HTML文档结构 130
5.1.2 利用CSS控制视图可见性 132
5.1.3 利用JavaScript实现视图导航 133
5.2 利用Web Storage API管理数据 134
5.2.1 从localStorage处读取数据 135
5.2.2 将数据存储到localStorage中 136
5.2.3 从localStorage中删除数据 137
5.3 使用IndexedDB来管理数据 139
5.3.1 侦测浏览器对数据库的支持 140
5.3.2 创建并连接到一个IndexedDB数据库,创建一个对象存储及索引 141
5.3.3 利用HTML和JavaScript开发一个动态列表 143
5.3.4 搜索IndexedDB数据库 145
5.3.5 使用IndexedDB或Web SQL,将任务添加到数据库中 148
5.3.6 从IndexedDB数据库中更新与删除数据 150
5.3.7 使用IndexedDB删除整个数据库 151
5.4 借助应用缓存清单,创建可离线使用的Web应用 152
5.4.1 配置Web服务器,以便使用应用缓存清单MIME类型 153
5.4.2 创建一个缓存清单文件 154
5.4.3 自动更新应用 155
5.5 小结 157
第三部分 交互式的图像、媒体及游戏
第 6 章 2D Canvas:底层2D图像渲染 162
6.1 Canvas基础知识 163
6.1.1 设定Canvas绘图环境 163
6.1.2 生成Canvas绘图环境 166
6.2 创建一个Canvas游戏 167
6.2.1 创建游戏引擎的主要部分 168
6.2.2 创建动态的矩形 172
6.2.3 创建弧形与圆形 175
6.2.4 利用路径来创建复杂形状 176
6.3 使Canvas元素动起来 178
6.3.1 使游戏元素动起来 179
6.3.2 碰撞侦测 180
6.3.3 实现键盘、鼠标及触摸控制 182
6.3.4 控制输入需要考虑的一些问题 185
6.4 优化Canvas游戏 186
6.4.1 记录得分与关卡 186
6.4.2 添加游戏开始界面与结束界面 190
6.4.3 借助现成的代码库 192
6.5 小结 193
第 7 章 SVG:响应式浏览器内图像 195
7.1 位图与矢量图形的对比 196
7.2 利用XML构建SVG Aliens游戏 198
7.2.1 在HTML中设置SVG 199
7.2.2 实现简单的形状与文本 202
7.2.3 使用XLink和复杂形状 204
7.3 利用JavaScript添加交互性 207
7.3.1 游戏引擎基本结构和使用界面 209
7.3.2 设计模式、动态对象的创建以及输入方式 211
7.3.3 创建并组织复杂形状 216
7.3.4 维持一个复杂的SVG组 222
7.3.5 SVG与Canvas的对比 228
7.4 小结 230
第 8 章 视频与音频:在浏览器内播放媒体 232
8.1 利用HTML5播放视频 233
8.1.1 应用预览及构建引用所需的必备知识 233
8.1.2 构建播放器的基本架构 234
8.1.3 使用video元素为页面加入视频 236
8.2 利用HTMLMediaElement接口来控制视频 237
8.3 利用source元素指定多种媒体格式 243
8.3.1 通过.currentSrc属性获取视频类型 244
8.3.2 媒体格式的转换 246
8.4 结合用户输入与视频,实现视频标注功能 247
8.4.1 使用canvas元素来播放视频 247
8.4.2 创建自定义的视频播放控件 249
8.4.3 控制播放中的视频 251
8.4.4 实现视频标注功能 256
8.5 小结 259
第 9 章 WebGL:3D应用开发 261
9.1 创建一个WebGL游戏引擎 263
9.1.1 设置引擎布局 264
9.1.2 创建、改变及删除对象的工具 270
9.2 与显卡通信 276
9.2.1 有关显卡的一些基本
|
|