第1篇 基础篇 2
第1章 Android技术概述 2
1.1来到智能手机世界 2
1.1.1何谓智能手机 2
1.1.2当前主流的智能手机系统 3
1.2蓬勃发展的手机上网产业 6
1.2.1 WAP技术介绍 6
1.2.2手机上网的商机 7
1.2.3移动平台应用开发 7
1.3 Android的巨大优势 8
1.3.1系出名门 8
1.3.2强大的开发团队 8
1.3.3诱人的奖励机制 9
1.3.4开源 10
1.4搭建Android应用开发环境 10
1.4.1安装Android SDK的系统要求 10
1.4.2安装JDK、 Eclipse、 Android SDK 11
1.4.3设定Android SDK Home 19
1.4.4验证理论 19
1.4.5创建Android虚拟设备(AVD) 21
1.4.6启动AVD模拟器 22
第2章 Android网络开发技术基础 25
2.1 HTML简介 25
2.1.1 HTML初步认识 25
2.1.2字体格式设置 26
2.1.3使用标示标记 28
2.1.4使用区域和段落标记 29
2.1.5使用表格标记 31
2.1.6使用表单标记 33
2.2 XML技术 36
2.2.1 XML的概述 37
2.2.2 XML的语法 37
2.2.3获取XML文档 38
2.3 CSS技术基础 39
2.3.1基本语法 40
2.3.2 CSS属性介绍 40
2.3.3 CSS编码规范 42
2.4 JavaScript技术基础 43
2.4.1 JavaScript概述 44
2.4.2 JavaScript运算符 44
2.4.3 JavaScript循环语句 46
2.4.4 JavaScript函数 48
2.4.5 JavaScript事件 49
2.4.6常用的Web页面脚本 51
2.5在Android设备测试网页 53
2.6编写第一个网页 56
2.6.1编写HTML文件 56
2.6.2设置页面的缩放 60
2.6.3使用CSS进行修饰 60
第3章 创建移动Web 64
3.1创建能在通用设备上运行的网站 64
3.1.1确定应用程序类型 64
3.1.2使用CSS改善HTML外观 65
3.1.3加入移动meta标签 67
3.1.4优化网站 68
3.2将站点升级至HTML 5 68
3.2.1确定何时升级和升级的具体方式 68
3.2.2升级到HTML5的步骤 70
3.2.3将HTML 5特性作为额外内容添加至网站 70
3.2.4 HTML 5为移动Web提供的服务 71
3.3将Web程序迁移到移动设备 71
3.3.1选择Web编辑器 72
3.3.2测试应用程序 72
3.3.3移动网站内容的特点 73
3.3.4为移动设备调整可视化设计 73
3.3.5 HTML 5及CSS 3检测 74
第2篇 HTML 5篇 78
第4章 HTML 5在移动设备中 78
4.1把握未来的风向标 78
4.1.1漫漫发展历程 78
4.1.2无与伦比的体验 78
4.2在Android设备中使用HTML 5 79
4.2.1使用HTML5设计移动网站时需要考虑的问题 80
4.2.2主流的移动设备屏幕的分辨率 80
4.2.3使用标准的HTML、 CSS和JavaScript技术 81
4.3用HTML 5设计移动网站前的准备 81
4.3.1为移动网站准备专用的域名 82
4.3.2准备测试环境 82
第5章 HTML 5的整体架构 83
5.1设置网页头部元素 83
5.1.1设置文档类型 83
5.1.2设置所有链接规定默认地址或默认目标 84
5.1.3链接标签 85
5.1.4设置有关页面的元信息 86
5.1.5定义客户端脚本 87
5.1.6定义HTML文档的样式信息 87
5.1.7设置页面标题 88
5.2设置页面正文 89
5.3注释 90
5.4和页面结构相关的新元素 91
5.4.1定义区段的标签 91
5.4.2定义独立内容的标签 92
5.4.3定义导航链接标签 92
5.4.4定义其所处内容之外的内容 93
5.4.5定义页脚内容的标签 94
第6章 体验基本元素 95
6.1在页面中输出一段文字 95
6.2对页面进行分栏设计 96
6.3使用〈details〉标记元素实现交互 97
6.3.1常用属性 97
6.3.2实现下拉弹出效果 98
6.4使用〈summary〉标记元素实现交互 99
6.5使用〈menu〉标记元素 100
6.5.1属性介绍 100
6.5.2实现右键菜单功能 101
6.6使用〈command〉标记元素 102
6.7使用〈progress〉标记元素 104
6.8使用〈meter〉标记元素 106
6.9使用树节点标记元素 107
6.9.1 〈section〉元素 108
6.9.2 〈nav〉元素 108
6.9.3 〈hgroup〉元素 110
6.10使用分组标记元素 110
6.10.1 〈ul〉元素 110
6.10.2 〈ol〉元素 111
6.11使用文本层次语义标记 112
6.11.1 〈time〉元素 112
6.11.2 〈mark〉元素 112
6.11.3 〈cite〉元素 113
6.12使用〈img〉标记元素 113
6.13使用〈iframe〉标记元素 114
6.14使用〈object〉标记元素 115
第7章 使用表单元素 117
7.1表单元素的类型 117
7.1.1 email类型 117
7.1.2 url类型 118
7.1.3 number类型 119
7.1.4 range类型 120
7.1.5 Date Pickers(数据检出器) 122
7.1.6 search类型 123
7.2表单元素中的属性 125
7.2.1记住表单中的数据 125
7.2.2验证表单中输入的数据是否合法 127
7.2.3在文本框中显示提示信息 128
7.2.4验证文本框中的内容是否为空 129
7.2.5开启表单的自动完成功能 130
7.2.6重写表单中的某些属性 131
7.2.7自动设置表单中传递数字 132
7.2.8在表单中选择多个上传文件 133
7.3新的表单元素 133
7.3.1在表单中自动提示输入文本 134
7.3.2一个简单的乘法计算器 135
7.3.3在网页中生成一个密钥 136
第8章 音频和视频应用 137
8.1处理视频 137
8.1.1 〈video〉标记 137
8.1.2 〈video〉标记的属性 138
8.2处理音频 141
8.2.1 〈audio〉标记 141
8.2.2 〈audio〉标记的属性 142
8.3高级应用 144
8.3.1为播放的视频准备一幅素材图片 144
8.3.2显示加载视频的状态 145
8.3.3出错时在播放屏幕中显示出错信息 146
8.3.4检测浏览器是否支持媒体文件类型 147
8.3.5显示视频的播放状态 149
8.3.6显示播放视频的时间信息 151
第9章 绘图实战 153
9.1使用〈canvas〉标记 153
9.2 HTML DOM Canvas对象 154
9.3 HTML 5绘图实践 155
9.3.1在指定位置绘制指定角度的相交线 156
9.3.2绘制一个圆 156
9.3.3在画布中显示一幅指定的图片 157
9.3.4绘制一个指定大小的正方形 157
9.3.5绘制一个带边框的矩形 159
9.3.6绘制一个渐变图形 160
9.3.7绘制不同的圆形 162
9.3.8绘制一个渐变圆形 165
9.3.9移动、缩放和旋转网页中的正方形 167
9.3.10使用组合的方式显示图形 168
9.3.11使用不同的方式平铺指定的图像 170
9.3.12切割指定的图像 172
第10章 数据存储 174
10.1 Web存储 174
10.1.1什么是Web存储 174
10.1.2 Web存储的影响 174
10.2 HTML 5中的两种存储方法 175
10.2.1使用localStorage方法 175
10.2.2使用sessionStorage方法 176
10.3数据存储对象 177
10.3.1使用sessionStorage对象 177
10.3.2使用localStorage对象 179
10.3.3使用localStorage对象中的clear()方法 182
10.3.4使用localStorage对象中的属性 183
10.4 WebDB存储方式 185
10.4.1 WebDB存储基础 185
10.4.2执行事务操作 186
10.4.3调用执行SQL语句 187
10.5实现一个日记式事务提醒系统 189
第11章 使用Web Sockets API 191
11.1安装jWebSocket服务器 191
11.2实现跨文档传输数据 192
11.3使用WebSocket传送数据 194
11.3.1使用Web Sockets API的方法 194
11.3.2实战演练 195
11.4处理JSON对象 196
11.5 jWebSocket框架 197
11.5.1使用jWebSocketTest框架进行通信 197
11.5.2使用j WebSocketTest开发一个聊天系统 200
第12章 使用Geolocation API 206
12.1 Geolocation API介绍 206
12.1.1对浏览器的支持情况 206
12.1.2使用API 207
12.2获取当前地理位置 208
12.3使用getCurrentPosition()方法 211
12.4在网页中使用地图 212
12.4.1在网页中调用地图 212
12.4.2在地图中显示当前的位置 213
12.4.3在网页中居中显示定位地图 215
12.4.4利用百度地图实现定位处理 216
第13章 使用Web Workers API 219
13.1 Web Workers API基础 219
13.1.1使用HTML 5 Web Workers API 219
13.1.2需要使用.js文件 220
13.1.3与Web Worker进行双向通信 220
13.2 Worker线程处理 222
13.2.1使用Worker处理线程 222
13.2.2使用线程传递JSON对象 224
13.2.3使用线程嵌套交互数据 226
13.2.4通过JSON发送消息 228
13.3执行大计算量任务 230
第3篇 jQuery Mobile篇 238
第14章 jQuery Mobile基础 238
14.1 jQuery Mobile简介 238
14.1.1 jQuery介绍 238
14.1.2 jQuery Mobile的特点 239
14.1.3对浏览器的支持 239
14.2 jQuery Mobile的4个突出特性 240
14.2.1跨所有移动平台的统一UI 240
14.2.2简化标记的驱动开发 240
14.2.3渐进式增强 241
14.2.4响应式设计 241
14.3实战演练——在Android中使用jQuery 设计网页 242
第15章 jQuery Mobile语法基础 246
15.1页面模板 246
15.2多页面模板 249
15.2.1一个多页面模板实例 249
15.2.2设置内部页面的页面标题 250
15.3使用Ajax修饰导航 251
15.3.1使用Ajax 251
15.3.2使用changePage()函数 254
15.3.3配置Ajax导航 255
15.4对话框 260
15.4.1实现基本对话框效果 261
15.4.2使用操作表 262
15.4.3实现警告框 265
15.5有媒体查询的响应式布局 267
第16章 实现导航功能 269
16.1页眉栏 269
16.1.1页眉基础 269
16.1.2实现页眉定位 269
16.1.3在页眉中使用按钮 272
16.1.4在页眉中使用分段控件 275
16.1.5实现回退按钮效果 279
16.2页脚栏 281
16.2.1页脚基础知识 281
16.2.2页脚定位 285
16.2.3页脚按钮 285
16.3工具栏 286
16.3.1带有图标的工具栏 286
16.3.2带有分段控件的工具栏 288
16.4标签栏 289
16.4.1带有标准图标的标签栏 290
16.4.2永久标签栏 292
16.4.3有自定义图标的标签栏 292
16.4.4带有分段控件的标签栏 294
第17章 按钮 298
17.1链接按钮 298
17.2表单按钮 299
17.3图像按钮 300
17.4有图标的按钮 301
17.5只带有图标的按钮 303
17.6实现按钮定位 305
17.7自定义按钮图标 306
17.8使用分组按钮 309
17.9使用主题按钮 311
17.10使用动态按钮 312
17.10.1按钮选项 312
17.10.2按钮方法 313
17.10.3按钮事件 313
17.10.4动态按钮演练 314
第18章 表单 317
18.1表单基础 317
18.2在表单中输入文本 319
18.2.1动态输入文本 321
18.2.2文本输入选项 321
18.2.3文本输入方法 322
18.2.4文本输入事件 322
18.3选择菜单 324
18.3.1自定义选择菜单 326
18.3.2占位符选项 327
18.3.3动态选择菜单 328
18.3.4选择菜单选项 328
18.3.5选择菜单的方法 330
18.3.6选择菜单的事件 330
18.4单选按钮 332
18.4.1复选框和单选按钮的选项 334
18.4.2复选框和单选按钮的方法 335
18.4.3复选框和单选按钮的事件 335
18.5复选框 337
18.5.1动态复选框 337
18.5.2使用复选框 337
18.6滑动条 340
18.6.1滑动条基础 341
18.6.2滑动条的选项 342
18.6.3滑动条的方法 343
18.6.4滑动条的事件 343
18.7开关控件 345
18.7.1开关控件基础 345
18.7.2动态开关事件 347
18.8使用本地表单元素 348
18.9使用Mobiscroll日期选择器 352
第19章 列表 355
19.1列表基础 355
19.2内置列表 356
19.3列表分割线 358
19.4带有缩略图和图标的列表 360
19.5使用拆分按钮列表 365
19.6使用编号列表 368
19.7使用只读列表 369
19.8使用列表徽章 372
19.9使用搜索栏过滤列表 374
19.10实现动态列表效果 378
19.10.1列表选项 378
19.10.2列表方法 380
19.10.3列表事件 381
第20章 内容格式化 383
20.1使用基本的HTML样式 383
20.2使用表格进行布局 383
20.2.1表格模板 383
20.2.2两列表格 384
20.2.3三列表格 386
20.2.4带有app图标的四列表格 387
20.2.5使用五列表格 388
20.2.6多行表格 388
20.2.7不规则的表格 390
20.2.8 Springboard(苹果iDevice的桌面) 391
20.3可折叠的内容块 395
20.3.1嵌套折叠和折叠组 396
20.3.2创建可折叠的内容块 396
20.4折叠组标记 398
20.4.1折叠组标记(Collapsible set markup)基础 399
20.4.2实战演练 399
20.5使用CSS设置样式 402
20.5.1实现背景渐变 402
20.5.2在Mozilla浏览器实现背景渐变 404
20.5.3实现页眉渐变效果 406
第21章 主题化设计 409
21.1主题设计基础 409
21.2主题和调色板 411
21.2.1主题设置 412
21.2.2调色板(swatch) 413
21.2.3全局主题设置(global theme settings) 413
21.2.4结构(structure) 414
21.3主题的默认值 414
21.4主题的继承 416
21.5主题的自定义 420
21.6 TherneRoller 426
21.6.1调色板和全局设置 427
21.6.2 Preview Inspector和QuickSwatch Bar 428
21.6.3使用Adobe Kuler集成工具 429
21.6.4使用ThemeRoller 429
第22章 jQuery Mobile的API 434
22.1配置jQuery Mobile 434
22.1.1 mobileinit事件 434
22.1.2可配置的jQuery Mobile选项 435
22.2方法 437
22.3事件 446
22.3.1触摸事件Touch events 446
22.3.2虚拟鼠标事件Virtual mouse events 447
22.3.3设备方向变化事件 Orientationchange events 448
22.3.4滚屏事件Scroll events 449
22.3.5页面加载事件Page load events 451
22.3.6页面显示/隐藏事件Page show/ hide events 456
22.3.7页面初始化事件Page initialization events 457
22.3.8动画事件Animation events 459
22.3.9触发事件 460
22.4 3个属性 461
22.5数据属性 461
22.6有响应的布局助手 464
22.6.1方向类Orientation Classes 464
22.6.2最小/最大宽度折断点类Min/Max Width Breakpoint Classes 465
22.6.3添加宽度折断点Adding Width Breakpoints 465
22.6.4运行媒介查询Running Media Queries 465
第4篇 综合实战篇 468
第23章 使用PhoneGap 468
23.1 PhoneGap简介 468
23.1.1产生背景 468
23.1.2什么是PhoneGap 469
23.1.3 PhoneGap的发展历程 469
23.1.4全新的功能 470
23.1.5 PhoneGap移动Web开发的步骤 470
23.2搭建PhoneGap开发环境 471
23.2.1准备工作 471
23.2.2获得PhoneGap开发包 471
23.2.3创建基于PhoneGap的HelloWorld程序 473
23.3 PhoneGap API详解 479
23.3.1应用API 480
23.3.2通知API 482
23.3.3设备API 483
23.3.4网络连接API 484
23.3.5加速计API 486
23.3.6地理位置API 489
23.3.7指南针API 491
23.3.8照相机API 493
23.3.9采集API 496
23.3.10媒体API 498
第24章 开发一个电话本管理系统 502
24.1需求分析 502
24.1.1产生背景 502
24.1.2功能分析 502
24.2创建Android工程 503
24.3实现系统主界面 504
24.4实现信息查询模块 506
24.5实现系统管理模块 508
24.6实现信息添加模块 511
24.7实现信息修改模块 514
24.8实现信息删除模块和更新模块 516