移动Web应用开发教程:HTML 5+JavaScript框架全栈App开发
作者: 周化钢 编著
出版时间: 2018年版
内容简介
本书全面介绍了Web移动应用开发的基本技术,从HTML 4.01+CSS+JavaScript的网站开发基础到新的HTML 5的移动特性,CSS 3新特征,增强的JavaScript API,流行的Web移动应用开发框架BootStrap,jQuery Mobile,AngualrJS,NoSQL的MongoDB数据库和Node.js全栈开发,及Web混合(Hybrid)应用开发框架PhoneGap/Cordova,把Web的应用重新打包编译成为Android App或iOS App。
全书共分为5篇: 第1~4章为基础篇,着重介绍HTML的结构和基本元素,CSS样式布局和JavaScript语言的编程技术; 第5~17章为进阶篇,着重讨论新发布的HTML 5标准的特性,语义化元素,微数据/微格式,新的表单元素和属性,Web字体,画图,文件与拖放技术,音频视频播放技术,客户端数据存储和数据库技术,离线应用,Web Socket通信与多线程技术。同时,也介绍了CSS 3的新特征,包括透明度、圆角、阴影、背景图、渐变、过渡和变换特效,及复杂的CSS 3选择器; 第18~24章为移动篇,重点介绍与Web移动开发相关的主要技术,包括移动Web响应式设计和BootStrap框架,移动UI设计与jQuery Mobile类库,移动测试方法,及移动硬件接口编程,例如,地理位置信息、移动设备方向接口、屏幕方向接口和摄像头接口的编程; 第25章为全栈篇,利用前面所学的知识(HTML+CSS+JavaScript),通过MEAN(MongoDB+Express+AngularJS+Node.js)框架整合技术,介绍了一个完整的Web应用开发过程,包括浏览器端和服务器端的开发(B/S模式)及MVC架构的开发方法; 第26~36章为实训篇,介绍了10个Web移动开发实验,包括移动开发环境搭建与测试,地理位置与地图,WebSocket通信,浏览器、多媒体播放器制作,响应式Web移动设计,UI设计,游戏,PhoneGap/Cordova及MEAN全栈开发实验。本书提供了大量应用实例代码,每章后均有拓展练习。
本书适合作为应用技术型高等院校计算机、软件工程专业高年级学生选用教材,同时也适合从事C/S软件开发人员转行到B/S模式的Web应用开发,或从传统的网站开发转行到Web移动应用开发,及广大软件编程爱好者作为参考学习用书。
目录
目录
基础篇
第1章Web开发概念和构架
1.1静态网页与动态网页
1.2描述标记语言与脚本语言
1.3解释语言与编译语言
1.4跨操作系统平台语言
1.5软件开发构架
1.5.1服务器端与客户端软件构架(C/S)
1.5.2Web(B/S)的软件构架
1.6HTTP
1.6.1HTTP请求包
1.6.2HTTP响应包
1.7Web应用的开发环境
1.7.1Web服务器
1.7.2浏览器
1.7.3代码编程工具
练习
第2章HTML基本结构
2.1最简单的HTML页面结构
2.2HTML基本语法
2.3HTML标签与属性
2.4HTML特殊符号与转义符
2.5HTML网页的语言定义
2.6HTML标签元素的属性详解
2.7HTML常用标签
2.7.1form表单标签
2.7.2table表格标签
2.7.3div和span区块标签
2.7.4img图像标签
2.7.5a超级链接标签
2.7.6ul和ol列表标签
练习
第3章HTML+CSS样式
3.1CSS样式表
3.2CSS的语法
3.3CSS样式结构
3.3.1内联样式表
3.3.2内部样式表
3.3.3外部样式表
3.4CSS选择器
3.5选择器组合定义
3.6CSS颜色、长度和字体单位
3.6.1颜色单位
3.6.2长度单位
3.6.3字体单位
3.6.4CSS字体定义
3.7CSS盒子模型
3.8网页设计的忠告
练习
第4章HTML+CSS+JavaScript
4.1JavaScript语言
4.2JavaScript的基本语法
4.3JavaScript的结构
4.4JavaScript函数详解
4.5JavaScript的DOM技术
4.6JavaScript的面向对象编程
4.6.1内置对象
4.6.2原生对象
4.6.3宿主对象
4.6.4创建对象和访问对象属性方法
4.7JavaScript事件驱动
4.8JavaScript的AJAX异步通信技术
4.9JSON: JavaScript对象表示法
4.9.1JSON的特性
4.9.2JSON的语法
4.10JavaScript的jQuery框架
4.11JavaScript和jQuery代码风格
练习
进阶篇
第5章HTML 5概要
5.1HTML标准制定时间表
5.2HTML 5的发展
5.3HTML 5在移动领域的应用
5.4HTML 5+CSS 3+JavaScript规范新特性
5.5HTML 5与浏览器
5.6HTML 5验证及回退机制
5.6.1HTML 5功能验证
5.6.2HTML 5的回退机制
练习
第6章HTML 5网页布局新元素
6.1语义化标签元素
6.2HTML 5文档纲要
6.3分节(分块)元素
6.4section元素
6.5article元素
6.6aside元素
6.7nav元素
6.8details和summary元素
6.9figure和figcaption元素
6.10address与footer元素
6.11meter元素
6.12progress元素
6.13time元素
6.14非英语的国际化元素
6.15其他语义化元素
6.16语义化标签小结
练习
第7章微格式与微数据的语义化布局
7.1格式化数据
7.2微数据
7.2.1微数据标记
7.2.2微数据词汇表
7.2.3微数据取值
7.2.4访问微数据
7.2.5微数据的应用
7.3微格式
7.3.1标记微格式数据
7.3.2微格式工具
7.3.3微数据与微格式比较
7.4data*自定义数据
7.4.1用dataset对象访问自定义数据
7.4.2用getAttribute()和setAttribute()访问自定义数据
7.4.3dataset和getAttribute()的区别
7.4.4data*自定义属性与CSS
7.4.5data*自定义属性的应用范围
练习
第8章深入了解CSS 3
8.1CSS 3介绍
8.2新CSS 3的属性命名
8.3CSS 3的指令@及函数url()
8.4CSS 3的盒子特效
8.4.1透明度
8.4.2圆角
8.4.3阴影
8.4.4背景图
8.4.5渐变
8.4.6过渡
8.4.7变换
8.5CSS 3的复杂选择器
8.5.1元素属性选择器
8.5.2元素属性值选择器
8.5.3伪类选择器
8.5.4伪元素选择器
8.5.5伪类与伪元素的区别
练习
第9章HTML 5表单
9.1增强特性
9.1.1占位符
9.1.2自动聚焦
9.1.3自动完成数据列表
9.2新的input的type类型
9.2.1数字
9.2.2日期时间
9.2.3Email、URL、颜色和搜索
9.3表单新元素
9.3.1生成密钥
9.3.2表单输出
9.4表单验证
9.4.1表单验证属性
9.4.2表单验证样式
9.4.3自定义表单验证非法信息提示
9.5HTML标签元素内容可编辑属性
练习
第10章Web字体与排版
10.1Web字体
10.2Web字体格式
10.3Web字体的导入
10.4Web字体的使用
10.5使用Web字体问题
10.6排版中的字体属性
10.7排版中的行高
10.8排版中的特殊符号
10.9排版分栏
练习
第11章画图
11.1画图功能
11.2canvas画布
11.3画线
11.3.1画线外观
11.3.2图形形状路径与填充
11.4画矩形
11.5图形的清除
11.6画弧线与圆
11.7画曲线
11.8变换、渐变、透明度与阴影
11.8.1渐变
11.8.2变换
11.8.3透明度
11.8.4阴影
11.9画布插入文字、图片及图案
11.9.1画布插入文字
11.9.2画布插入图片
11.9.3画布插入图案
11.10关于3D绘图、动画和矢量图
11.10.13D绘图
11.10.2动画
11.10.3矢量图
练习
第12章文件与拖放技术
12.1File文件
12.2HTML的文件操作
12.3File API读取文件属性
12.4FileReader读文件的方法和事件
12.5读取图片和文本文件操作
12.6通过AJAX上传文件
12.7拖放
12.7.1拖放对象属性draggable
12.7.2拖放对象与目标地
12.7.3拖放事件的产生
12.7.4拖放事件的处理过程
12.7.5浏览器外部的拖放
练习
第13章History API
13.1浏览器翻页与URL地址
13.2浏览器翻页与AJAX技术
13.3History对象与浏览器翻页
练习
第14章视频音频播放
14.1浏览器播放视频音频
14.2视频音频格式及转换
14.3视频音频的标签元素
14.3.1video和audio标签元素
14.3.2source标签
14.3.3track标签
14.4JavaScript API控制播放
练习
第15章客户端数据存储
15.1数据存储
15.1.1数据存储方式比较
15.1.2Cookie与Web本地存储比较
15.2Web本地数据存储
15.2.1localStorage和sessionStorage对象
15.2.2Web存储的事件处理
15.2.3保存其他数据类型
15.3数据库存储
15.3.1Web SQL
15.3.2IndexedDB
练习
第16章离线应用
16.1离线应用概述
16.2离线应用原理
16.3创建缓存清单
16.4离线应用事件与缓存更新
16.5Web服务器设置
练习
第17章WebSocket通信与Workers多线程
17.1Web通信
17.2WebSocket通信方式
17.3专用的WebSocket服务器
17.4WebSocket客户端编程
17.5Workers多线程编程
17.6Workers的编程实现
17.7Workers编程注意事项
练习
移动篇
第18章Web移动应用新领域
18.1Web移动应用的发展概况
18.2移动App与桌面App
18.3Web App与Native App
18.4移动Web开发设计方法及优化
18.4.1前端开发模式
18.4.2后端开发模式
18.4.3响应式Web设计
18.4.4单页面应用
18.4.5混合式应用
18.4.6移动Web开发优化
练习
第19章移动Web响应式设计
19.1关于视口、像素和分辨率
19.1.1屏幕分辨率、像素、像素密度与CSS问题
19.1.2视口
19.2媒体查询选择器
19.2.1Media媒体查询
19.2.2viewport的缩放技术
19.2.3使用viewport的效果比较
19.3流体网格布局
19.3.1网格布局
19.3.2将CSS的块单位从像素变成百分数
19.3.3字体的流式布局
19.4动态图片处理
19.5BootStrap——一个Web响应式框架
练习
第20章移动Web UI设计
20.1人机交互的UI设计
20.1.1人机交互的发展
20.1.2移动设备的交互特殊性
20.2菜单、导航与标签栏
20.3图标、按钮拟物化设计与扁平化风格
20.4表单
20.5表格
20.6jQuery Mobile类库
20.6.1jQuery Mobile的设计风格
20.6.2jQuery Mobile UI控件
20.6.3jQuery Mobile移动事件