内 容 简 介本书循序渐进地讲述了在Android 等移动平台开发Web 程序的方法,详细剖析了开发移动Web 所需要的各种主流技术。全书共分21 章,从Web 开发基础开始讲起,依次讲解了移动应用程序开发基础,HTML 5 基本元素,使用表单元素,多媒体应用,Canvas 绘图处理,数据存储,jQuery Mobile 基础,jQuery Mobile 语法基础,预加载、页面缓存、页面脚本和对话框,实现导航功能,页脚栏、工具栏和标签栏,按钮和表单,PhoneGap 事件,API——应用和通知,API——设备、网络连接和加速计,地理位置API,指南针API,照相机API,采集API。在讲解每一个知识点时,都遵循了“理论结合实践”这一教学模式,通过具体地演示实例来讲解每一个知识点的具体应用。附赠光盘中提供书中实例的源代码,并赠送5 个综合实例源代码及语音视频教学供读者学习分析。本书不仅可作为Web 设计人员、HTML 5 学习者、jQuery Mobile 学习者、PhoneGap 学习者、网站开发人员、网络维护人员、Android 开发人员、iOS 开发人员的学习用书和参考用书,也可作为相关培训学校和大专院校相关专业的教学用书。
暂缺《移动Web开发从入门到精通:基于HTML 5+jQuery Mobile+PhoneGap》作者简介
目 录
Chapter 1 Web 开发基础..............1
1.1 认识网页和网站...................... 1
1.1.1 什么是网页..................... 1
1.1.2 什么是网站..................... 1
1.2 网页的基本构成元素.............. 2
1.3 网页和网站制作...................... 3
1.3.1 网站发展趋势................. 3
1.3.2 制作网页的基本流程..... 4
1.3.3 网站制作流程................. 5
1.3.4 网站设计原则................. 6
1.4 HTML 基础............................ 6
1.4.1 HTML 初步.................... 7
1.4.2 字体格式设置................. 7
1.4.3 使用标示标记............... 11
1.4.4 使用区域和段落标记..... 12
1.4.5 使用表格标记............... 14
1.4.6 使用表单标记............... 17
1.5 CSS 技术基础....................... 20
1.5.1 基本语法....................... 20
1.5.2 CSS 属性介绍............... 21
1.5.3 CSS 编码规范............... 23
1.6 JavaScript 基础.................... 24
1.6.1 JavaScript 概述............. 24
1.6.2 JavaScript 运算符......... 25
1.6.3 JavaScript 循环语句..... 26
1.6.4 JavaScript 函数............. 28
1.6.5 JavaScript 事件............. 30
Chapter 2 移动应用程序开发基础..........................33
2.1 智能手机介绍........................ 33
2.2 主流智能手机系统................ 33
2.2.1 Symbian(塞班)......... 34
2.2.2 Android ......................... 34
2.2.3 iOS 系统....................... 35
2.2.4 Windows Phone ............ 36
2.2.5 Blackberry OS(黑莓) ....................... 37
2.3 Android 系统介绍................ 38
2.3.1 强大的开发团队.......... 38
2.3.2 诱人的奖励机制.......... 38
2.3.3 开源.............................. 39
2.4 iOS 系统介绍........................ 39
2.4.1 iOS 发展史................... 39
2.4.2 iOS 系统....................... 40
2.4.3 从iPhone 到iPad ......... 41
2.5 创建能在通用设备上运行的网站....................................... 41
2.5.1 确定应用程序类型....... 41
2.5.2 使用CSS 改善HTML外观.............................. 42
2.5.3 加入移动meta 标签..... 44
2.5.4 优化网站...................... 45
2.6 将站点升级至HTML 5 ....... 46
2.6.1 确定何时升级和升级的具体方式...................... 46
2.6.2 升级到HTML 5 的步骤.............................. 47
2.6.3 将HTML5 特性作为额外内容添加至网站.......... 48
2.6.4 使用HTML 5 为移动Web 提供的服务........... 49
2.7 将Web 程序迁移到移动设备....................................... 49
2.7.1 选择Web 编辑器......... 49
2.7.2 测试应用程序.............. 50
2.7.3 移动网站内容的特点..... 50
2.7.4 为移动设备调整可视化的设计.......................... 51
2.7.5 HTML5 及CSS3 检测.... 52
2.8 搭建Android 开发环境....... 53
2.8.1 安装Android SDK 的系统要求....................... 53
2.8.2 安装JDK ...................... 54
2.8.3 获取并安装Eclipse 和Android SDK ................ 58
2.8.4 安装ADT ..................... 61
2.8.5 设定Android SDKHome............................. 63
2.8.6 验证开发环境............... 64
2.8.7 创建Android 虚拟设备(AVD) .............. 65
2.8.8 启动AVD 模拟器........ 67
2.9 搭建iOS 开发环境............... 68
2.9.1 开发前的准备——加入
iOS 开发团队............... 69
2.9.2 安装Xcode ................... 70
2.9.3 Xcode 介绍................... 71
2.9.4 下载并安装Xcode ....... 71
2.9.5 创建一个Xcode 项目并启动模拟器................... 74
Chapter 3 HTML5 基本元素详解..........................79
3.1 分栏设计................................ 79
3.2 使用标记元素........ 80
3.2.1 常用属性....................... 80
3.2.2 实现下拉弹出效果....... 82
3.3 使用标记元素... 83
3.4 使用标记元素.......... 84
3.4.1 标记属性介绍.... 85
3.4.2 实现右键菜单功能....... 87
3.5 使用标记.......... 88
3.6 使用标记元素.... 91
3.7 使用标记元素......... 93
3.8 使用树节点标记元素............ 95
3.8.1 元素............... 95
3.8.2 元素.................... 95
3.8.3 元素............... 96
Chapter 4 使用表单元素............. 98
4.1 表单元素的类型................... 98
4.1.1 “email”类型.............. 98
4.1.2 “url”类型................ 100
4.1.3 “number”类型........ 101
4.1.4 “range”类型............ 103
4.1.5 Date Pickers(日期检出器) ........ 104
4.1.6 “search”类型.......... 106
4.2 表单元素中的属性............. 108
4.2.1 保存表单中的数据..... 108
4.2.2 验证表单中输入的数据是否合法............ 111
4.2.3 在文本框中显示提示信息............................ 112
4.2.4 验证文本框中的内容是否为空.................... 113
4.2.5 开启表单的自动完成功能.................... 115
4.2.6 重写表单中的某些属性.................... 116
4.2.7 自动设置表单中传递数字............................ 117
4.2.8 在表单中选择多个上传文件.................... 118
Chapter 5 多媒体应用............... 120
5.1 处理视频............................. 120
5.1.1 使用标记....... 120
5.1.2 标记的属性.... 121
5.2 处理音频............................. 125
5.2.1 标记............... 125
5.2.2 标记的属性.... 126
5.3 高级应用............................. 129
5.3.1 为播放的视频准备一幅素材图片............ 129
5.3.2 显示加载视频的状态............................ 132
5.3.3 出错时在播放屏幕中显示出错信息............ 133
5.3.4 检测浏览器是否支持这个媒体类型............. 135
5.3.5 显示视频的播放状态............................. 137
5.3.6 显示播放视频的时间信息............................. 139
Chapter 6 Canvas 绘图处理.......142
6.1 Canvas 标记基础................ 142
6.2 使用HTML DOM Canvas对象...................................... 143
6.3 HTML 5 绘图实践............. 144
6.3.1 在指定位置绘制指定角度的相交线............. 144
6.3.2 绘制一个圆................. 145
6.3.3 在画布中显示一幅指定的图片..................... 146
6.3.4 绘制一个指定大小的正方形......................... 147
6.3.5 绘制一个带边框的矩形............................. 149
6.3.6 绘制一个渐变图形..... 151
6.3.7 绘制不同的圆形......... 152
6.3.8 绘制一个渐变圆形..... 156
6.3.9 移动、缩放和旋转网页中的图形............. 158
6.3.10 使用组合的方式显示图形..................... 160
Chapter 7 数据存储...................163
7.1 Web 存储............................. 163
7.1.1 什么是Web 存储....... 163
7.1.2 Web 存储的影响........ 163
7.2 HTML 5 中的两种存储方法..................................... 164
7.2.1 使用localStorage方法............................. 164
7.2.2 使用sessionStorage方法............................. 165
7.3 数据存储对象...................... 166
7.3.1 使用sessionStorage对象............................ 166
7.3.2 使用localStorage对象............................ 170
7.3.3 使用clear()方法......... 173
7.3.4 使用localStorage属性............................ 175
7.4 WebDB 存储方式............... 177
7.4.1 WebDB 存储基础...... 177
7.4.2 执行事物操作............ 179
7.4.3 调用执行SQL 语句..... 181
Chapter 8 jQuery Mobile 基础... 184
8.1 jQuery Mobile 简介........... 184
8.1.1 jQuery 介绍................ 184
8.1.2 jQuery Mobile的特点........................ 185
8.1.3 对浏览器的支持........ 186
8.1.4 对平台的支持............ 186
8.2 jQuery Mobile 的特性....... 187
8.2.1 跨所有移动平台的统一UI ....................... 187
8.2.2 简化的标记驱动的开发............................ 188
8.2.3 渐进式增强................ 188
8.2.4 响应式设计................ 188
8.3 获取jQuery Mobile ........... 189
8.3.1 下载插件.................... 189
8.3.2 使用URL 方式加载插件文件.................... 191
8.4 搭建测试环境..................... 191
8.5 实战演练——使用jQueryMobile 设计网页................ 193
Chapter 9 jQuery Mobile 语法基础......................... 197
9.1 页面结构............................. 197
9.1.1 基本框架介绍............ 197
9.1.2 多页面模板................ 200
9.1.3 设置内部页面的页面标题.................... 202
9.1.4 比较单页面文档和多页面文档................. 203
9.2 导航链接处理...................... 204
9.2.1 设置外部页面链接..... 204
9.2.2 页面后退链接............. 204
9.3 使用Ajax 修饰导航........... 205
9.3.1 使用Ajax.................... 206
9.3.2 使用函数changePage() .......................... 208
9.3.3 配置Ajax 导航........... 209
Chapter 10 预加载、页面缓存、页面脚本和对话框..........210
10.1 预加载................................ 210
10.2 页面缓存............................ 212
10.3 转换.................................... 213
10.4 页面脚本............................ 213
10.4.1 创建页面................... 214
10.4.2 跳转页面................... 215
10.5 创建对话框的方法............ 217
10.6 实现常用的对话框............ 219
10.6.1 实现基本的对话框效果........................... 219
10.6.2 实现操作表样式对话框........................... 220
10.6.3 实现警告框............... 223
10.6.4 关闭对话框............... 225
Chapter 11 实现导航功能.........227
11.1 导航基础............................ 227
11.2 页眉栏(头部)................ 227
11.2.1 页眉基础................... 227
11.2.2 页眉栏的基本结构..... 228
11.2.3 实现页眉定位........... 229
11.3 在页眉中使用按钮............ 229
11.3.1 设置后退按钮的文字........................... 230
11.3.2 手动添加按钮........... 232
11.3.3 只有图标的按钮....... 233
11.3.4 设定按钮位置........... 233
11.3.5 实现回退按钮效果.... 234
11.4 实现分段导航功能........... 234
11.4.1 使用分段控件.......... 234
11.4.2 设置导航栏的图标... 239
11.4.3 设置导航栏图标的位置.......................... 240
11.4.4 自定义导航栏的图标...................... 240
11.4.5 截断标题.................. 243
Chapter 12 页脚栏、工具栏和标签...................... 245
12.1 页脚栏(尾部栏) ........... 245
12.1.1 页脚基础知识.......... 245
12.1.2 页脚定位.................. 247
12.1.3 页脚按钮.................. 250
12.2 工具栏............................... 252
12.2.1 带有图标的工具栏... 253
12.2.2 带有分段控件的工具栏...................... 255
12.3 标签栏............................... 255
12.3.1 带有标准图标的标签栏...................... 255
12.3.2 永久标签栏.............. 257
12.3.3 有自定义图标的标签栏...................... 258
12.3.4 带有分段控件的标签栏...................... 260
Chapter 13 按钮和表单............ 261
13.1 链接按钮........................... 261
13.2 表单按钮........................... 263
13.3 为按钮设置图像............... 264
13.3.1 使用图像按钮.......... 264
13.3.2 使用有图标的按钮... 264
13.3.3 使用只带有图标的按钮.......................... 265
13.4 内联按钮........................... 265
13.5 实现按钮定位................... 266
13.6 自定义按钮图标............... 268
13.7 实现分组按钮................... 268
13.7.1 分组按钮基础.......... 268
13.7.2 使用分组按钮........... 269
13.8 使用动态按钮.................... 271
13.8.1 按钮选项................... 271
13.8.2 按钮方法................... 272
13.8.3 按钮事件................... 273
13.9 表单基础............................ 273
13.9.1 动态输入文本........... 273
13.9.2 文本输入选项........... 274
13.9.3 文本输入方法........... 276
13.9.4 文本输入事件........... 276
13.10 选择菜单.......................... 276
13.10.1 使用基本的选择菜单........................... 276
13.10.2 自定义选择菜单..... 278
13.10.3 占位符选项............. 278
13.10.4 动态选择菜单......... 279
13.10.5 选择菜单选项......... 279
13.10.6 选择菜单的方法..... 281
13.10.7 选择菜单事件......... 281
13.11 单选按钮.......................... 281
13.11.1 使用简单的单选按钮........................... 282
13.11.2 复选框和单选按钮的事件............... 282
13.11.3 复选框和单选按钮的事件............... 282
13.12 使用复选框...................... 283
13.12.1 动态复选框............. 283
13.12.2 水平放置复选框..... 285
13.12.3 使用动态复选框..... 286
13.13 使用滑动条...................... 288
13.13.1 滑动条基础............. 288
13.13.2 滑动条的选项......... 288
13.13.3 滑动条方法............. 289
13.13.4 滑动条事件............. 289
Chapter 14 PhoneGap 基础.......292
14.1 PhoneGap 简介................. 292
14.1.1 产生背景介绍........... 292
14.1.2 什么是PhoneGap ..... 293
14.1.3 PhoneGap 的发展历程.......................... 293
14.1.4 全新的功能.............. 294
14.1.5 PhoneGap 的发展现状.......................... 295
14.2 原生应用、Web 应用和混合型应用....................... 295
14.2.1 原生应用.................. 295
14.2.2 Web 应用.................. 296
14.2.3 混合型应用.............. 296
14.2.4 PhoneGap 的优点和缺点...................... 297
14.3 PhoneGap API 基础......... 298
14.4 PhoneGap 的工作............ 299
14.5 PhoneGap 开发必备技术................................... 299
14.5.1 Titanium 框架........... 299
14.5.2 Adobe AIR 技术....... 300
14.5.3 Corona 库.................. 301
14.5.4 常用的JavaScript移动UI 框架............ 301
Chapter 15 PhoneGap 事件详解...................... 303
15.1 PhoneGap 的事件概述.... 303
15.2 deviceready 事件.............. 304
15.2.1 deviceready 事件基础.......................... 304
15.2.2 使用deviceready事件.......................... 305
15.3 pause 和resume 事件...... 306
15.3.1 使用pause 事件....... 306
15.3.2 使用resume 事件..... 308
15.4 online 事件和offline事件................................... 310
15.4.1 online 事件............... 310
15.4.2 offline 事件............... 311
15.5 batterycritical、batterylow和batterystatus ................ 313
15.5.1 使用batterycritical事件.......................... 313
15.5.2 使用batterylow事件........................... 314
15.5.3 使用batterystatus事件........................... 315
15.6 backbutton 事件............... 318
15.7 searchbutton 事件............ 319
15.8 其他事件............................ 320
15.8.1 使用menubutton事件........................... 320
15.8.2 使用startcallbutton事件........................... 321
15.8.3 使用endcallbutton事件........................... 322
15.8.4 使用volumedownbutton事件........................... 322
15.8.5 使用volumeupbutton事件........................... 323
Chapter 16 API——应用和通知详解........................324
16.1 应用API............................ 324
16.1.1 白名单安全机制....... 324
16.1.2 访问对象的方法....... 325
16.2 Notification 提醒.............. 326
16.2.1 主要对象................... 326
16.2.2 使用alert 方法.......... 326
16.2.3 使用confirm 方法.... 328
16.2.4 使用beep 方法......... 331
16.2.5 使用vibrate 方法...... 332
16.2.6 活动指示器和进度对话框通知............... 334
16.2.7 状态灯通知............... 337
16.3 综合演练——演示各种API的基本用法........................ 337
Chapter 17 API——设备、网络连接和加速计..................344
17.1 设备API............................ 344
17.1.1 主要对象................... 344
17.1.2 使用name 方法........ 344
17.1.3 使用phonegap方法.......................... 345
17.1.4 使用platform方法.......................... 345
17.1.5 使用uuid 方法......... 346
17.1.6 使用version 方法..... 346
17.1.7 实战演练——使用设备API................... 346
17.2 网络连接API.................... 347
17.2.1 属性和常量.............. 347
17.2.2 使用网络连接API ... 348
17.3 加速计API........................ 349
17.3.1 使用acceleration对象.......................... 349
17.3.2 使用getCurrentAcceleration 方法..... 350
17.3.3 使用watchAcceleration方法.......................... 352
17.3.4 使用clearWatch方法.......................... 354
17.3.5 加速计API 的参数.. 356
17.4 综合演练——实现一个蓝牙控制器....................... 356
Chapter 18 地理位置API 详解... 375
18.1 地理位置基础................... 375
18.1.1 应用背景.................. 375
18.1.2 Geolocation 接口介绍.......................... 376
18.2 Geolocation 对象详解...... 376
18.2.1 Position 对象............ 376
18.2.2 PositionError 对象.... 378
18.2.3 Coordinates 对象...... 378
18.3 参数详解........................... 380
18.3.1 geolocationSuccess..... 381
18.3.2 geolocationError ....... 381
18.3.3 geolocationOptions..... 381
18.4 操作方法........................... 382
18.4.1 获取设备当前的地理位置信息.................. 382
18.4.2 定期获取设备的地理位置信息................... 384
18.4.3 取消定期获取设备的地理位置信息........... 386
Chapter 19 指南针API 详解......389
19.1 指南针API 的四个对象... 389
19.1.1 “CompassHeading”对象........................... 389
19.1.2 “CompassError”对象........................... 390
19.1.3 “CompassSuccess”对象........................... 390
19.1.4 “CompassOptions”对象........................... 390
19.2 指南针方法........................ 390
19.2.1 获取设备当前的指南针信息............... 390
19.2.2 定期获取设备的指南针信息............... 392
19.2.3 取消定期获取设备的指南针信息............... 394
19.2.4 获取罗盘的朝向度数........................... 396
19.2.5 停止监听................... 398
Chapter 20 照相机API 详解......400
20.1 三个方法............................ 400
20.1.1 方法“camera.get
Picture” ................... 400
20.1.2 方法“camera
Success”.................. 402
20.1.3 方法“camera
Error” ...................... 403
20.1.4 实战演练——使用照相机API............... 403
20.2 业务操作........................... 403
20.2.1 业务操作基础.......... 405
20.2.2 实战演练.................. 406
20.3 综合演练——实现拍照并设置为头像................... 409
Chapter 21 采集API 详解......... 414
21.1 Capture 的对象................ 414
21.1.1 Capture 对象............. 414
21.1.2 CaptureAudioOptions对象.......................... 414
21.1.3 CaptureImageOptions对象.......................... 415
21.1.4 CaptureVideoOptions对象.......................... 416
21.1.5 CaptureCB 对象....... 416
21.1.6 CaptureErrorCB对象.......................... 417
21.1.7 ConfigurationData对象.......................... 417
21.1.8 MediaFile 对象......... 418
21.1.9 MediaFileData 对象.. 418
21.2 Capture 的方法................ 418
21.2.1 capture.captureAudio方法.......................... 418
21.2.2 capture.captureImage方法.......................... 421
21.2.3 MediaFile.getFormatData 方法.................. 423
21.2.4 capture.captureVideo 方法................ 423
移动Web开发从入门到精通:基于HTML 5+jQuery Mobile+PhoneGappdf