新書推薦:
《
拍电影的热知识:126部影片里的创作技巧(全彩插图版)
》
售價:NT$
500.0
《
大唐名城:长安风华冠天下
》
售價:NT$
398.0
《
情绪传染(当代西方社会心理学名著译丛)
》
售價:NT$
403.0
《
中国年画 1950-1990 THE NEW CHINA: NEW YEAR PICTURE 英文版
》
售價:NT$
1100.0
《
革命与反革命:社会文化视野下的民国政治(近世中国丛书)
》
售價:NT$
435.0
《
画楼:《北洋画报》忆旧(年轮丛书)
》
售價:NT$
1573.0
《
大国脊梁:漫画版
》
售價:NT$
374.0
《
跟着渤海小吏读历史:大唐气象(全三册)
》
售價:NT$
989.0
|
內容簡介: |
本书作为HTML5网页开发语言的教程,系统地介绍了HTML5的相关知识点。全书共12章,从HTML5的基础知识及其元素的用法开始,后面依次讲解了HTML5的表单与文件API、Canvas绘制图形、音频与视频、本地存储、离线Web应用、地理位置API、通信API、XMLHttpRequest API、Web Workers API等内容。本书内容全面、结构清晰,有助于读者理解相关知识点。全书的每个知识点都结合相应的代码实例,并展示对应的实例效果图,有助于提高读者的编程能力。读者在实际开发过程中可以应用自如,达到学以致用的目的。本书适合网页编程爱好者及从事Web网页开发的相关读者阅读。
|
關於作者: |
刘河飞,曾在多家企业工作,从事JavaWeb开发工作,拥有多年Web开发经验,热爱并长期专注于Web前端学习,现从事Web前端工作,以及HTML5应用的实践。擅长HTML、CSS、Java等开发技术,并能应用这些技术结合数据库开发过大型应用网站。了解W3C标准,掌握DIV CSS页面架构和布局方式,能够熟练应用HTMLCSSJavaScript技术,开发符合W3C标准的大型网站前端页面。
|
目錄:
|
目录
第1章认识HTML51
1.1HTML5的发展历史1
1.2HTML5可以做什么2
1.3世界知名浏览器厂商对HTML5的支持3
1.4如何学习HTML53
1.4.1学习HTML5的资源推荐3
1.4.2编写HTML5的软件推荐4
1.4.3你的第一个HTML5实例4
1.4.4对你的第一个HTML5实例解析5
第2章HTML5的与众不同7
2.1语法的改变7
2.1.1HTML5语法的改变7
2.1.2HTML5版本的兼容性9
2.1.3标记实例11
2.2新增的元素和废除的元素12
2.2.1新增的结构元素12
2.2.2新增的其他元素13
2.2.3新增的input元素类型22
2.2.4废除的元素24
2.3新增的属性和废除的属性25
2.3.1新增的属性25
2.3.2废除的属性41
2.4全局属性42
2.5HTML5新增的事件50
第3章HTML5的结构52
3.1HTML5新增的主体结构元素52
3.1.1article元素52
3.1.2aside元素55
3.1.3nav元素58
3.1.4pubdate元素60
3.1.5section元素61
3.1.6time元素63
3.2HTML5新增的非主体结构元素64
3.2.1address元素64
3.2.2header元素65
3.2.3hgroup元素67
3.2.4footer元素67
3.2.5main元素69
3.3使用HTML5新增的结构元素编排一份网页纲要70
3.3.1编排内容区块70
3.3.2网页编排实例75
第4章HTML5中的表单与文件API83
4.1HTML5表单新增属性与input元素类型的变化83
4.1.1表单新增属性84
4.1.2input元素类型的变化101
4.2HTML5中的表单验证110
4.2.1自动验证111
4.2.2输入域验证111
4.2.3取消验证118
4.2.4自定义错误提示信息118
4.3HTML5表单新增的页面元素120
4.3.1新增的figure和figcaption元素120
4.3.2新增的details元素121
4.3.3新增的mark元素123
4.3.4新增的progress元素124
4.3.5新增的meter元素125
4.3.6新增的dialog元素126
4.3.7改良的ol与dl列表127
4.3.8改良的a元素130
4.3.9加以限制的cite元素132
4.3.10重新定义的small元素133
4.3.11安全性增强的iframe元素133
4.3.12增强的script元素139
4.4HTML5中的文件API144
4.4.1通过file对象选择文件145
4.4.2文件的Blob对象146
4.4.3文件的FileReader接口153
4.4.4文件的ArrayBuffer与ArrayBufferView对象160
4.4.5文件系统API的各种操作167
4.5HTML5中的拖放API200
4.5.1实现拖放的步骤200
4.5.2dataTransfer对象应用详解201
第5章HTML5中的canvas绘制图形207
5.1canvas概述207
5.1.1canvas是什么207
5.1.2canvas坐标208
5.1.3在页面中放置canvas元素208
5.2canvas应用209
5.2.1canvas画直线209
5.2.2canvas画矩形217
5.2.3canvas画圆218
5.2.4canvas画圆角矩形223
5.2.5擦除canvas画布224
5.2.6canvas画曲线225
5.2.7使用clip函数在指定区域绘图228
5.2.8绘制自定义图形229
5.2.9canvas使用Path2D对象绘制路径230
5.2.10canvas绘制文字232
5.2.11canvas绘制渐变图形236
5.2.12canvas绘制变形图形239
5.2.13canvas 给图形绘制阴影249
5.3canvas处理图像251
5.3.1canvas绘制图像252
5.3.2图像平铺256
5.3.3图像裁剪258
5.3.4像素处理260
5.3.5灰度控制264
5.4canvas高级功能265
5.4.1图形组合265
5.4.2图像混合267
5.4.3自定义画板270
5.5补充知识272
5.5.1保存与恢复状态272
5.5.2canvas画布的文件保存功能273
5.5.3canvas的简单应用实例274
第6章HTML5中的音频与视频280
6.1HTML5 audio与video概述280
6.1.1视频容器281
6.1.2音频和视频的编码器与解码器281
6.1.3HTML5对audio和video的限制282
6.1.4当今浏览器对audio和video元素的支持情况282
6.2使用HTML5 audio和video API283
6.2.1浏览器支持性检测283
6.2.2HTML5页面中播放视频和音频的方法284
6.2.3多媒体的属性286
6.2.4多媒体的方法306
6.2.5多媒体的事件308
6.2.6进阶功能给音频或视频添加字幕311
6.2.7构建HTML5音频与视频的开发实例317
第7章HTML5本地存储329
7.1HTML5 Web Storage329
7.1.1Web Storage概述329
7.1.2检测浏览器的支持情况330
7.1.3Web Storage中的API简介331
7.1.4采用Web Storage来存储JSON对象的数据332
7.1.5采用Web Storage实现留言本335
7.2本地数据库336
7.2.1本地数据库的基本概念336
7.2.2使用本地数据库API337
7.2.3使用本地数据库SQLLite实现Web留言本339
7.3indexedDB数据库的使用341
7.3.1连接数据库341
7.3.2创建对象仓库与索引344
7.3.3indexedDB实现保存与获取数据349
7.3.4indexedDB数据库中的事务352
7.3.5查询数据354
7.3.6统计对象仓库中的数据条数360
第8章HTML5构建离线Web应用程序362
8.1离线Web应用程序362
8.1.1离线Web应用程序概述362
8.1.2Web应用程序的本地缓存与浏览器的网页缓存的区别363
8.2搭建简单的离线Web应用程序364
8.2.1缓存文件(.manifest)364
8.2.2服务器的配置365
8.3浏览器与服务器的交互过程368
8.4applicationCache对象369
8.4.1update方法369
8.4.2abort方法371
8.4.3swapCache方法371
8.4.4applicationCache对象的事件372
第9章HTML5地理位置(Geolocation)API376
9.1Geolocation API的基本知识376
9.1.1经度和纬度坐标377
9.1.2IP地址地理定位378
9.1.3GPS地理定位379
9.1.4Wi-Fi地理定位379
9.1.5手机地理定位380
9.1.6用户自定义的地理定位数据380
9.1.7取得当前地理位置380
9.1.8监视当前地理位置信息384
9.1.9停止获取当前用户的地理位置信息385
9.1.10position对象385
9.2隐私387
9.2.1触发隐私保护机制387
9.2.2处理用户地理位置信息387
9.3HTML5 Geolocation API的应用388
9.3.1使用HTML5 Geolocation 构建实时应用388
9.3.2Google Maps API392
9.3.3在Google地图上显示我在这里394
9.3.4HTML5 Geolocation API在百度地图中的应用395
第10章HTML5通信(Communication)API398
10.1跨文档消息传输398
10.1.1使用postMessage API398
10.1.2跨文档消息传输实例399
10.2WebSocket通信402
10.2.1WebSocket通信的基本知识402
10.2.2使用WebSocket API402
10.2.3发送对象406
第11章XMLHttpRequest API的应用408
11.1利用XMLHttpRequest从服务器端获取二进制数据408
11.1.1ArrayBuffer响应数据409
11.1.2Blob响应数据412
11.2使用XMLHttpRequest发送数据413
11.2.1发送字符串数据413
11.2.2发送表单数据415
11.2.3发送Blob对象416
11.2.4发送ArrayBuffer对象418
11.2.5上传文件420
11.3实现跨域请求数据422
第12章HTML5 Web Workers API424
12.1HTML5 Web Workers详述424
12.1.1Web Workers的基础知识424
12.1.2与线程进行数据交互427
12.1.3使用HTML5 Web Workers API429
12.2HTML5 Web Workers中的线程432
12.2.1线程中的函数、变量和类432
12.2.2单层嵌套434
12.2.3在多个子线程中进行数据交互436
|
內容試閱:
|
前 言
用心打造完全针对基础读者的自学手册,让读者用最短的时间、以轻松的方式尽快入门,享受更多的乐趣。
HTML从1993年至今,经历了5代的发展。作为网络语言标准规范,其在计算机的发展上起着举足轻重的作用。起初并没有HTML1,而是1993年IETF的一个草案,并不是成型的标准。两年之后,即1995年,HTML 2.0诞生了。随着万维网的诞生和发展,HTML的发展速度可谓迅猛。1996年,HTML 3.2成为W3C的推荐标准。随后在1997年和1999年,HTML 4.0成为W3C的推荐标准。HTML4阶段持续了10年左右,在诸多人员的努力下,终于诞生了我们现在使用的HTML5。HTML5在前几代的基础上进行了重大的修改,使其在当今互联网上的应用非常广泛。HTML5继承了原来HTML的功能,在不破坏之前标准的前提下增加了很多属性。2014年该标准规范终于制定完成。
近年来,Web前端技术的发展如日中天,而领衔这一领域发展的HTML5功不可没。HTML5从根本上改变了开发商开发Web应用程序的方式,从桌面浏览器到移动应用,这种语言和标准正在影响着各种操作平台。随着移动应用领域的不断普及,市场越来越大,对基于移动应用平台开发的需求也日益增多。大家争论不休的一个问题就是开发Web应用还是原生应用?而随着HTML5标准的发展,两者之间的差异已经逐渐变得模糊,今天各大媒体都争相报道与HTML5有关的内容。那么,HTML5未来的发展趋势到底是什么?下面来说一下笔者眼中HTML5的未来市场。
1.移动优先
在大数据时代,移动设备剧增,对移动应用的需求日益增多。尤其是手机已经成为人们生活中非常重要的一部分,很大一部分人的生活已经离不开手机。移动优先已经成为发展趋势,与此同时,人们对移动应用的需求也越来越多、要求也越来越高。这些应用极大地方便了人们的生活。所以未来HTML5会优先发展移动应用。而当今,一、二线城市企业在招聘前端工程师的时候已经明确提出了对HTML5的技能要求。HTML5功能强大,开发的产品友好,在企业级开发中表现出色,越来越受到企业的欢迎。这无疑有助于开拓HTML5的市场。
2.游戏开发
现如今,游戏开发可谓IT行业中的翘楚,尤其是手游市场。传统的手游开发需要在两种主流的系统上运行,即iOS和Android(当然还有其他手机系统),但是在iOS上开发收费游戏时就有局限性了,必须向苹果公司付费,每一单都需要有一定的提成。而用HTML5开发Web应用就可以巧妙地避开这一提成。可以说HTML5的这一强大优势无疑成为开发商获益的途径之一。
3.响应式设计和兼容性
在HTML5改变移动平台开发前,必须迈出重要一步,那就是解决响应式设计和兼容性问题。如今,移动设备的屏幕尺寸让开发者眼花缭乱,如何让开发出的应用软件能够自适应不同尺寸的屏幕已成为急需解决的问题。要想做好响应式设计并非一件易事。这时就需要HTML5洞悉内容与屏幕之间的反馈关系,响应式设计要完全脱离流,转而注重内容是如何在网页和移动设备中被处理的。这一过程还在继续,随着HTML5的不断发展,终会让功能越来越完善,界面更加友好。
4.设备访问
消除Web应用与原生应用界限的最大障碍就是浏览器访问移动设备基本特性的能力,如照相机、通讯录、加速器等,HTML5的推动者正在努力完善HTML5以实现此功能。对许多移动开发商来说,提高设备访问能力是HTML5最令人激动的革新,这意味着Web应用能够登陆移动设备而无须做任何PhoneGap打包。游戏开发商当然最开心,因为某些特性对他们来说是封锁的,比如,能整合到游戏中的加速器。这就开启了另一个可能的世界,比如,能与云更好地整合并提高游戏可玩性。有了HTML5这个平台,开发商可以不再依赖Java、CSS3、HTML及其他程序语言。
5.离线缓存
所谓离线缓存,就是在离线的情况下,Web应用还可以正常运行。传统意义上的Web应用需要依赖网络,而HTML5的离线缓存可以冲破这道束缚。利用离线缓存技术,可以在离线情况下正常使用Web应用。目前已有相关产品实现了这种功能。
对于HTML爱好者来说,这本书非常适合,其中包含了当前极其全面的学习资源。本书通过对官网上的在线文档、博客及相关书籍进行收集和整理,同时结合笔者在软件开发中的编程经验,将有关HTML5的零碎知识点组织成系统化的概念和技术分类来进行讲解。
本书共12章,从最基础的知识开始讲解,让从未接触过计算机的读者也能在读完此书后对HTML5有较为深刻的理解,并为其强大的功能深深折服。全书采用从易到难、循序渐进的方式进行讲解,内容几乎涉及当今HTML应用的各个方面。第1~6章介绍HTML5基础,此部分内容可以让初学者在短时间内对HTML5有一个整体的感知;第7章主要讲解本地存储,涉及数据库,为后续Web开发奠定基础;第8章主要讲解HTML5在Web开发方面的应用;第9~12章介绍了HTML5的各种API,这对有一定开发基础的HTML爱好者来说是必备的技能,在以后的开发工作中会多次用到,读者不需要刻意记忆这些API,用到时查阅即可。
本书的读者对象
? 对HTML5感兴趣的初学者。
? 有一定Web前端技术基础的读者。
? 从事HTML5前端开发的人员。
? 想使用HTML5做一些小产品的开发人员。
? 想自学HTML5的编程爱好者。
? 大中专院校的学生。
|
|