第一图书网

HTML5程序设计(第2版)

[荷] Peter Lubbers,[美] Brian Albers,[美] Frank Salim 人民邮电出版社
出版时间:

2012-5  

出版社:

人民邮电出版社  

作者:

[荷] Peter Lubbers,[美] Brian Albers,[美] Frank Salim  

页数:

276  

字数:

431000  

译者:

柳 靖,李 杰,刘 淼  

Tag标签:

无  

前言

  前 言  HTML5是全新的。事实上,它甚至还没有完全成熟。如果你听一些“坏脾气”专家的介绍,他们会告诉你HTML5在未来10年甚至更久的时间里都不会完全成熟!  那么,为什么会有人认为现在是时候编写一本讨论HTML5编程的书呢?原因很简单。对于希望自己的Web应用程序能够卓而不群的人,HTML5正是众望所归。本书作者致力于研究开发和讲授HTML5技术已有两年多,现在可以肯定地说,在实际Web应用中新标准的采纳程度正在以令人目眩的速度不断加快。即使在编写本书的过程中,我们都被迫不断更新书中的浏览器支持表格,重新评估哪些技术又具备了使用条件。  面对自己正在使用的浏览器,大多数用户并不真正了解其具备的功能有多强大。当然,他们在浏览器自动更新后可能会发现一些细微的界面改变。但他们可能不知道,新版本的浏览器刚刚引入了可自由绘图的canvas、实时网络通信或其他一些潜在的功能升级。  本书的目标是帮助开发者释放HTML5的潜力。  本书读者对象  本书针对熟悉JavaScript编程且有经验的Web应用程序开发者。也就是说,本书将不涉及Web开发的基础知识。如果想了解Web编程的基础知识,目前的资源已经够多了。如果读者遇到了下面的情况,那么本书可以为你提供有用的见解和信息,这些见解和信息可能正是你在努力寻找的。  你有时会发现自己在想:“如果我的浏览器可以……”  你发现自己通过页面的源代码和开发工具来分析一个令人印象深刻的网站。  你喜欢查看最新浏览器的版本发布信息,了解其更新了什么功能。  你在寻找优化或简化应用程序的方法。  你想针对使用最新浏览器的用户定制网站,以便尽可能提供最佳用户体验。  如果上述任何一项跟你的情况吻合,那么这本书可能就很适合你。  虽然我们在适当情况下特意指出了浏览器支持的局限性,但目的并非要给出一个兼容旧浏览器且可无缝运行的解决方案。经验表明,浏览器更新换代的速度一日千里,如果要获取浏览器兼容解决方案方面的相关信息,本书不是最好的渠道。相反,我们专注于HTML5规范及其使用方法。兼容的解决方案可以在因特网上找到,而随着时间的推移,这些解决方案也会渐渐被人遗忘。  本书内容  本书的13章内容涵盖了从HTML5 API中挑选出来的适用面广、功能强大的API。在某些情况下,为了更好地演示程序,我们需要用到前面章节已经介绍过的功能。  第1章“HTML5概述”,从HTML版本的发展历程说起,介绍了HTML规范过去和现在的版本情况,然后介绍了新的高级语义标签,以及一些根本性的改进,同时还分析了HTML5背后的设计理念。了解这些对读者是有益的。  第2章“Canvas API”、第3章“SVG”和第4章“音频和视频”,讨论了新的可视化元素和媒体元素。在这三章中,集中讨论如何在无插件和无服务器交互的情况下优化用户界面。  第5章“Geolocation API”介绍的是一个全新的功能。在此之前,它很难通过模拟方式实现,它赋予应用程序确定用户当前位置的能力,并可以用来定制用户体验。这里对隐私的保护也很重要,所以我们会介绍隐私保护的相关内容。  第6章“Communication API”和第7章“WebSockets API”展示了HTML5提供的日益强大的通信能力。有了这两个API,Web应用不仅可以同其他网站进行通信,而且还能以最简单的代码和最小的网络开销进行实时数据流的传递。这两章中的技术将有助于开发人员简化目前网络上部署的过于复杂的架构。  第8章“Forms API”,参照这章介绍的内容,开发人员通过细小的调整即可增加桌面Web应用程序和移动Web应用程序的可用性。利用这一章介绍的其他新特性,则可以检测大多数常见场景中的页面输入错误。第9章详细介绍了新的拖放API的功能,并展示了如何使用它们。  第10章“Web Workers API”、第11章“Web Storage API”和第12章“构建离线Web应用”,解决了应用程序的内部数据管道问题。在这三章中,开发人员会学到如何优化现有系统来获得更好的性能和更好的数据管理功能。  最后,第13章“HTML5未来展望”讨论了一些可能会在HTML5中陆续出现的功能,这些功能可能让大家垂涎已久了。  示例代码和配套网站  本书中的示例代码都可从Apress网站的Source Code部分找到。访问www.apress.com,单击Source Code,然后查找这本书的标题即可。读者可以从本书主页上下载源代码。此外,我们还建立了一个配套网站,地址为www.prohtml5.com,读者也可以在此下载示例代码和一些实用附加功能源码 。  联系作者  感谢购买此书,我们希望你喜欢它,并把它当做一个宝贵的资源。尽管已经尽了最大努力,但我们知道一时疏忽就可能引发错误,在此,我们为可能的疏忽表示歉意。我们欢迎你对此书的内容和源代码发表意见和评论。你可以发送邮件至prohtml5@gmail.com来与我们取得联系。

内容概要

  《深入HTML5编程(第2版)》首先介绍了HTML5的历史背景、新的语义标签及与以往HTML版本相比的根本变化,同时揭示了HTML5背后的设计原理。本书在上一版的基础上新增了SVG和拖放API相关内容,并对部分内容进行了更新。从第2章起,分别围绕构建令人神往的富Web 应用,逐一讨论了HTML5的Canvas、Geolocation、Communication、WebSocket、Forms、WebWorkers、Storage等API的使用,辅以直观明了的客户端和服务器端示例代码,让开发人员能够迅速理解和掌握新一代Web标准所涵盖的核心技术。《深入HTML5编程(第2版)》最后探索了离线Web应用并展望了HTML5未来的发展前景。
  《深入HTML5编程(第2版)》面向有一定经验的Web应用开发人员,对HTML5及未来Web应用技术发展有浓厚兴趣的读者也可以学习参考。

作者简介

Peter Lubbers
Kaazing技术交流资深总监,旧金山HTML5用户组创建人。作为HTML5和WebSocket的狂热爱好者,Peter经常在国际大会上发言,还在全球范围内开展HTML5的技术培训。在加盟Kaazing前,Peter在Oracle担任了近十年的资深信息架构师,获得过两项软件专利。
Brian Albers
Kaazing研发中心副总裁。他有数十年的Web开发经验,曾在Oracle担任高级开发经理。Brian经常在Web 2.0博览会、AJAXWorld博览会和Web JavaOne等国际性会议上做讲演。
Frank Salim
Kaazing的元老级工程师,曾参与过WebSocket网关和客户端策略项目。他毕业于波莫纳学院计算机专业,除了编程之外,还喜欢阅读、绘画和轮滑。

书籍目录

第1章 HTML5概述 1
1.1 HTML5发展史 1
1.2 关于2022年的那个神话 2
1.3 谁在开发HTML5 3
1.4 新的认识 3
1.4.1 兼容性和存在即合理 3
1.4.2 效率和用户优先 4
1.4.3 化繁为简 5
1.4.4 通用访问 5
1.5 无插件范式 5
1.6 HTML5的新功能 8
1.6.1 新的DOCTYPE和字符集 8
1.6.2 新元素和旧元素 9
1.6.3 语义化标记 10
1.6.4 使用Selectors API简化选取操作 15
1.6.5 JavaScript日志和调试 18
1.6.6 window.JSON 19
1.6.7 DOM Level 3 19
1.6.8 Monkeys、Squirrelfish和其他JavaScript引擎 19
1.7 小结 21
第2章 Canvas API 22
2.1 HTML5 Canvas概述 22
2.1.1 历史 22
2.1.2 canvas是什么 23
2.1.3 canvas坐标 23
2.1.4 什么情况下不用canvas 23
2.1.5 替代内容 24
2.1.6 CSS和canvas 25
2.1.7 浏览器对HTML5 Canvas的支持情况 25
2.2 使用HTML5 Canvas API 25
2.2.1 检测浏览器支持情况 25
2.2.2 在页面中加入canvas 26
2.2.3 变换 28
2.2.4 路径 30
2.2.5 描边样式 32
2.2.6 填充样式 34
2.2.7 填充矩形区域 34
2.2.8 绘制曲线 35
2.2.9 在canvas中插入图片 37
2.2.10 渐变 38
2.2.11 背景图 40
2.2.12 缩放canvas对象 42
2.2.13 Canvas变换 43
2.2.14 Canvas文本 45
2.2.15 应用阴影 46
2.2.16 像素数据 48
2.2.17 Canvas的安全机制 50
2.3 使用HTML5 Canvas创建应用 51
2.3.1 进阶功能之全页玻璃窗 54
2.3.2 进阶功能之为Canvas动画计时 54
2.4 小结 57
第3章 SVG 58
3.1 SVG概述 58
3.1.1 历史 58
3.1.2 理解SVG 59
3.1.3 可缩放图形 61
3.1.4 使用SVG创建2D图形 61
3.1.5 在页面中添加SVG 61
3.1.6 简单的形状 62
3.1.7 变换SVG元素 63
3.1.8 复用内容 64
3.1.9 图案和渐变 64
3.1.10 SVG路径 65
3.1.11 使用SVG文本 66
3.1.12 组合场景 67
3.2 使用SVG创建交互式应用 68
3.2.1 添加树 69
3.2.2 添加updateTrees函数 69
3.2.3 添加removeTree函数 70
3.2.4 添加CSS样式 70
3.2.5 最终代码 70
3.3 小结 74
第4章 音频和视频 75
4.1 HTML5 Audio和Video概述 75
4.1.1 视频容器 75
4.1.2 音频和视频编解码器 76
4.1.3 HTML5 Audio和Video的限制 77
4.1.4 audio元素和video元素的浏览器支持情况 77
4.2 使用HTML5 Audio和Video API 78
4.2.1 浏览器支持性检测 79
4.2.2 可访问性 79
4.2.3 理解媒体元素 80
4.2.4 使用audio元素 85
4.2.5 使用video元素 86
4.2.6 进阶功能 93
4.3 小结 95
第5章 Geolocation API 96
5.1 位置信息 96
5.1.1 纬度和经度坐标 96
5.1.2 位置信息从何而来 97
5.1.3 IP地址地理定位数据 98
5.1.4 GPS地理定位数据 98
5.1.5 Wi-Fi地理定位数据 98
5.1.6 手机地理定位数据 99
5.1.7 用户自定义的地理定位数据 99
5.2 HTML5 Geolocation的浏览器支持情况 99
5.3 隐私 100
5.3.1 触发隐私保护机制 101
5.3.2 处理位置信息 101
5.4 使用HTML5 Geolocation API 102
5.4.1 浏览器支持性检查 102
5.4.2 位置请求 102
5.5 使用HTML5 Geolocation构建应用 107
5.5.1 编写HTML显示代码 109
5.5.2 处理Geolocation数据 110
5.5.3 最终代码 112
5.6 进阶功能 115
5.6.1 现在的状态是什么 115
5.6.2 在Goolge Map上显示“我在这里” 117
5.7 小结 118
第6章 Communication API 119
6.1 跨文档消息通信 119
6.1.1 理解源安全 122
6.1.2 跨文档消息通信的浏览器支持情况 122
6.1.3 使用postMessage API 123
6.1.4 使用postMessage API创建应用 124
6.2 XMLHttpRequest Level 2 128
6.2.1 跨源XMLHttpRequest 129
6.2.2 进度事件 130
6.2.3 HTML5 XMLHttpRequestLevel 2的浏览器支持情况 131
6.2.4 使用XMLHttpRequest API 131
6.2.5 创建XMLHttpRequest应用 133
6.3 进阶功能 136
6.3.1 结构化的数据 136
6.3.2 Framebusting 136
6.4 小结 137
第7章 WebSockets API 138
7.1 WebSockets概述 138
7.1.1 实时和HTTP 138
7.1.2 解读WebSockets 140
7.2 编写简单的Echo WebSocket服务器 145
7.3 使用HTML5 WebSockets API 153
7.3.1 浏览器支持情况检测 153
7.3.2 API的基本用法 154
7.4 创建HTML5 WebSockets应用程序 158
7.4.1 编写HTML文件 159
7.4.2 添加WebSocket代码 160
7.4.3 添加Geolocation代码 160
7.4.4 合并所有内容 161
7.4.5 最终代码 163
7.5 小结 165
第8章 Forms API 166
8.1 HTML5 Forms概述 166
8.1.1 HTML Forms与XForms 166
8.1.2 功能性表单 167
8.1.3 HTML5 Forms的浏览器支持情况 167
8.1.4 输入型控件目录 168
8.2 使用HTML5 Forms API 172
8.2.1 新的表单特性和函数 172
8.2.2 表单验证 175
8.2.3 验证反馈 178
8.3 构建HTML5 Forms应用 180
8.4 小结 185
第9章 拖放 186
9.1 Web拖放发展史 186
9.2 HTML5拖放概述 187
9.2.1 蓝图 187
9.2.2 需要记住的事件 189
9.2.3 设置元素可拖动 192
9.2.4 传输和控制 192
9.3 构建拖放应用 193
9.4 拖放文件 201
9.5 进阶功能 205
9.6 小结 206
第10章 Web Workers API 207
10.1 Web Workers的浏览器支持情况 208
10.2 使用Web Workers API 208
10.2.1 浏览器支持性检查 208
10.2.2 创建Web Workers 209
10.2.3 多个JavaScript文件的加载与执行 209
10.2.4 与HTML5 Web Workers通信 209
10.3 编写主页 210
10.3.1 处理错误 211
10.3.2 停止Web Workers 212
10.3.3 Web Workers的嵌套使用 212
10.3.4 使用定时器 213
10.3.5 示例代码 213
10.4 构建Web Workers应用 214
10.4.1 编写blur.js辅助脚本 216
10.4.2 编写blur.html应用页面 217
10.4.3 编写blurWorker.js 218
10.4.4 与Web Worker通信 218
10.4.5 运行程序 219
10.4.6 示例代码 220
10.5 小结 225
第11章 Web Storage API 226
11.1 HTML5 Web Storage概述 226
11.2 Web Storage的浏览器支持情况 227
11.3 使用Web Storage API 227
11.3.1 检查浏览器的支持性 227
11.3.2 设置和获取数据 229
11.3.3 封堵数据泄漏 230
11.3.4 localStorage与sessionStorage 230
11.3.5 Web Storage API的其他特性和函数 232
11.3.6 更新Web Storage后的通信 234
11.3.7 探索Web Storage 235
11.4 构建Web Storage应用 236
11.5 浏览器数据库存储展望 247
11.5.1 Web SQL Database 247
11.5.2 索引数据库API 250
11.6 进阶功能 251
11.6.1 JSON对象的存储 251
11.6.2 共享窗口 252
11.7 小结 253
第12章 构建离线Web应用 254
12.1 HTML5离线Web应用概述 254
12.2 使用HTML5离线Web应用API 256
12.2.1 检查浏览器的支持情况 256
12.2.2 搭建简单的离线应用程序 256
12.2.3 支持离线行为 257
12.2.4 manifest文件 257
12.2.5 applicationCache API 259
12.2.6 运行中的应用缓存 260
12.3 使用HTML5离线Web应用构建应用 261
12.3.1 创建记录资源的manifest文件 263
12.3.2 创建构成界面的HTML和CSS 264
12.3.3 创建离线JavaScript 264
12.3.4 检查applicationCache的支持情况 266
12.3.5 为Update按钮添加处理函数 266
12.3.6 添加Geolocation跟踪代码 267
12.3.7 添加Storage功能代码 267
12.3.8 添加离线事件处理程序 268
12.4 小结 268
第13章 HTML5未来展望 269
13.1 HTML5的浏览器支持情况 269
13.2 HTML未来的发展 269
13.2.1 WebGL 270
13.2.2 设备 272
13.2.3 音频数据API 272
13.2.4 触摸屏设备事件 272
13.2.5 P2P网络 275
13.2.6 最终方向 275
13.3 小结 275

媒体关注与评论

  “本书并没有试图从头到尾介绍HTML5的所有基础知识,而是挑选特定主题深入介绍,比如SVG、拖放、音频/视频、Canvas等。介绍这些主题的详细程度正是我所希望的。”  ——读者评论  “三位作者共同操刀,为我们呈献了功能强大且实用的HTML5代码。本书打破了HTML5在近几年尚不可用的魔咒,深入讲解了具有主流浏览器支持的API的使用方法,解答了我关于HTML5标准的许多疑问,建议每位熟悉HTML并想使用新标准的人员都阅读本书。”  ——某读者


图书封面

图书标签Tags

广告

下载页面


HTML5程序设计(第2版) PDF格式下载



HTML5程序设计(第2版)(超级畅销书《HTML5高级程序设计》升级版.适合有基础的人看


一起买了两本书,HTML5程序设计相对于HTML5开发精要与实例详解来说,就简单多了,性价比也稍微低一些,这本书主要介绍的是一些相关概念,缺少详细的案例介绍,不过对于初学者来说可以用来学习HTML5上手,介绍的还比较全面,还不错吧~


对HTML5的内容做了简介,对于不想深入了解的朋友很适合。


对于学习html5,看看很有好处,感觉html5在未来大有发展


还没开始看,最近有点忙,但是我觉得学习html5,还是从基础方面的书籍开始看比较好,这样技术会比较扎实


刚开始研究html5,感觉还可以。 正在深入研究中。。。


内容讲的很详细,适合有 html基础的阅读


最近老是看到html5字眼,我想知道它和以往的html有什么样的区别,正好手上有优惠券就买了这本书,觉得有点小贵,以为应该厚一点,其实没想象中厚,翻翻了感觉不简单,果然我的修为不够,等这段时间忙完六级再说,以后看完这本书在追评吧。


十分好的一本HTML5教程书,内容丰富,很适合初学者使用。


HTML5新特性的详细介绍,关键功能的参考书


html5,应该说是挺新,网上找资料,有人推荐的它,于是就买来看看了,说不准以后转前端了,可能会用得到,关键它太火了


书挺好的,受益匪浅,努力学习html5中。


不错,很实用,是学习html5的好书籍


建议学习HTML5的人都看看。


应该是学习HTML5必备的一本


书很薄,都是精华,讲了html5的大部分特性,例子给得很具体,适合快速学习。


适合了解html5,但不适合系统学习


目前市面上关于html5的最好的一本书了


非常实用的html5


书还没有看,买了好几本html5的,有时间再研究研究


html5必看


不错,写的很好,HTML5威武


html5全凭手写啊


HTML5的好书


HTML5经典教材


的确不错,html5的人必读!


内容比较精简,但经典,值得收藏,本书针对熟悉JavaScript编程且有经验的Web应用程序开发者,就是说不涉及Web开发的基础知识。


刚刚翻了一下,说是给有web开发基础的人员开的!


对于web新规范的理解很有帮助


不过内容应该比较久了,书里面写是两年前了,这个升级版不知道是哪里升级了呢?


对新技术进行了展望,觉得很有前景。


书的包装很好!但是,内容 我只是想说,编程这东西靠的还是实战!


最新技术,跟上潮流。迎接淘汰


新技术提前学习参考书!


挺不错的书,值得推荐。就是太高级了,不适合新手入门。


虽然不是搞网页设计的,但为了拓宽视野,学习下


开始有一点直接深入了~~不错


稍微深入的了解


案例不错,再深入点就好了···


还没看,不过看了相关介绍,感觉挺全面。期待内容了


未来的前台语言,哈哈哈


讲解的知识比较详细,示例很多,适合新手练手学习


内容是写的不错,不过需要有一定基础的人来看,不建议初学者看,对于进阶者也不建议,还是推荐去看看那种带实例操作的,适合提高技巧的人看


书中总结的很好,就是例子比较少,而且服务器等用的也不是很主流


看索引目录,包含了图形音频视频以及JS多线程与本地化存储部分,应该是个不错的工具书。


对于专业书籍而言,这本书很好,就是当当上计算机专业书的折扣不划算


不错,解释得挺详细的。同一个出版社分2个地方发书有点。。还有本没到哇。


保持知识储备更新吧


不适合入门,它是专门写给有一定基础的童鞋的。反正我目前是看不懂。


我一定要认真学习


分各个功能介绍,容易理解接受


1.发货速度很快;
2.书的内容也不错,很有参考价值;


内容新,还没来得及仔细看,看了补上


物流太快了,早上拍的,下午就收到了!书的纸张和想象的有点差别,内容比较基础!


送货太快了,当天就收到,书很好,字体很清晰,内容也值得学习


书很不错比较适合初学者,但对于有些基础的人来说,有部分过于啰嗦了


很容易看懂 系统介绍 全面


书已经收到,平装,感觉不错,总体浏览了一下,和介绍相符,回头仔细阅读


这书不错,价格便宜,很实用。我喜欢。


经典,我喜欢.


刚拿到,看了下目录,很喜欢


这书很好,很实用,我喜欢,你也可以拥有。


学习新的知识不错,但只是入门


要是别弄其他商家就比较好,有一本英语词典,当当自己的不用运费,其他商家还要收23元运费。大家买书前要看清楚呀。


看过几章PDF的,不错,买一本书看看。


作为参考用吧,以前看过下本书和这个几乎一样


刚看了开头,还没自己看内容,但愿有用


货刚到,书的质量不错,内容对于实践操作有直接作用


工作室买的,也帮自己买了一份,厚度一般,内容很好


纸张不错·内容讲的比较详细


正品 很好 书的内容很精炼 适合初学者


纸质不错,内容给更不错,不愧是权威的。推荐


内容不错,看了一段时间了


书不错,内容浅显易懂,值得一看


内容没全看完,新手必看


讲得不错,而且内容也比较清楚~


好书,比第一版多了一些内容


还没有仔细看内容,质量是不错的。


书简洁好懂,内容包括了作者很多的想法和实践,跟着书写一些demo或有很好的收获!


书印刷的很好,内容也很不错,写的很详细,有启发性


内容很不错,内容很丰富


很全面,但书中涉及后台的例子都是用的python,我还没学呢。。。


讲的比较笼统,不是很全面


自己所要了解的东西里面都有介绍,不过不是太具体


挺好的 介绍挺详细的


正版书,帮老公买的专业书籍,包装完好,300减100时购买,又打折又减免,很划算了。


书不错 但不适合初学者 要有JS的基础


赶快学习。。。


就当激励自己好好学习了!


很好的书,学习了!


js还没学会,这本书还看不懂


看这本书的评价那么多,粗略的翻了一下,应该还可以吧,具体还是要我看了之后评价,更好


很实用的教材,看了就可以动手,讲得比较透彻实用


给老公买的,看不懂,他说不错~一直在当当买书,便宜又正版


一般般般吧!


到货很快,赞一个!


书到了还没开封看。嘿嘿


新手用书,很棒的


很实用,讲解到位,通俗易懂,推荐!


据说不错,据说不错


相关图书