展开全部

主编推荐语

移动Web开发基础与实践:HTML5、CSS3、Vue.js、适配方案、调试技巧、实际案例项目及Hybrid开发技术。

内容简介

本书主要内容分为四大块:第一大块主要写移动web开发基础知识包括HTML5新特性以及CSS3相关的技术点。第二大块主要写移动web实际项目的相关框架和相关类库包括移动web适配方案,调试技巧,Vue.js基础,Webpack打包和构建配置。第三大块主要是三个实际的案例项目,采用Vue+Vuex+webpack+vue—router+scss+eslint+es6开发,包括1)Vue.js音乐播放器,2)今日头条webAPP,3)美团外卖webAPP.第四大块主要写结合Hybrid开发技术,利用iOS技术,讲解iOS的webview开发和使用,开发JSBridge来进行通信,实现iOS离线包框架。

目录

  • 版权信息
  • 作者简介
  • 内容简介
  • 前言
  • 第1章 移动Web开发概述
  • 1.1 移动互联网Web技术发展
  • 1.2 移动Web开发和PC Web开发的区别
  • 1.3 移动Web和HTML5
  • 1.4 浏览器安装和代码环境的准备
  • 1.4.1 安装Chrome
  • 1.4.2 安装Node.js和http-schmerver
  • 1.4.3 选择合适的代码编辑器
  • 1.5 本章小结
  • 第2章 HTML5语义化标签和属性
  • 2.1 DOCTYPE声明
  • 2.2 <header>标签
  • 2.3 <footer>标签
  • 2.4 <section>标签
  • 2.5 <nav>标签
  • 2.6 <aside>标签
  • 2.7 语义化标签总结
  • 2.8 HTML5其他新增的标签
  • 2.8.1 <progress>标签
  • 2.8.2 <picture>标签
  • 2.8.3 <dialog>标签
  • 2.9 HTML5新增的标签属性
  • 2.9.1 <input>的type属性
  • 2.9.2 <input>文件上传功能
  • 2.9.3 <input>其他新增属性
  • 2.9.4 <script>的async和defer属性
  • 2.10 本章小结
  • 第3章 HTML5音频和视频
  • 3.1 <audio>标签与音频
  • 3.1.1 <audio>标签元素的使用
  • 3.1.2 使用JavaScript操作audio对象
  • 3.1.3 audio对象的事件
  • 3.2 <video>标签与视频
  • 3.2.1 <video>标签元素的使用
  • 3.2.2 使用JavaScript操作video对象
  • 3.2.3 video对象的事件
  • 3.2.4 videojs视频播放器的使用
  • 3.3 本章小结
  • 第4章 HTML5 Canvas基础
  • 4.1 一个简单的Canvas
  • 4.2 使用Canvas绘制路径
  • 4.2.1 使用Canvas绘制直线
  • 4.2.2 使用Canvas路径填充
  • 4.3 使用Canvas绘制图形
  • 4.3.1 使用Canvas绘制矩形
  • 4.3.2 使用Canvas绘制圆
  • 4.3.3 使用Canvas绘制图形的锯齿问题
  • 4.4 使用Canvas绘制文本
  • 4.5 使用Canvas绘制和压缩图片
  • 4.5.1 使用Canvas绘制图片
  • 4.5.2 使用Canvas压缩图片
  • 4.6 使用Canvas绘制贝塞尔曲线
  • 4.6.1 二次贝塞尔曲线的绘制
  • 4.6.2 三次贝塞尔曲线的绘制
  • 4.7 Canvas转换
  • 4.7.1 平移translate
  • 4.7.2 旋转rotate
  • 4.7.3 缩放scale
  • 4.8 Canvas状态的保存和恢复
  • 4.9 Canvas动画
  • 4.10 案例:Canvas实现点赞送心动画
  • 4.11 本章小结
  • 第5章 HTML5网页存储
  • 5.1 初识Web Storage
  • 5.1.1 Web Storage的概念
  • 5.1.2 同源策略
  • 5.1.3 Web Storage的浏览器兼容性
  • 5.2 LocalStorage和SessionStorage
  • 5.2.1 LocalStorage的增删改查
  • 5.2.2 LocalStorage容量的限制
  • 5.3 浏览器存储的其他方案
  • 5.3.1 IndexedDB
  • 5.3.2 Service Worker
  • 5.4 本章小结
  • 第6章 CSS3选择器
  • 6.1 CSS3属性选择器
  • 6.2 CSS3伪类选择器
  • 6.2.1 伪类和伪元素
  • 6.2.2 子元素伪类选择器
  • 6.2.3 类型子元素伪类选择器
  • 6.2.4 条件伪类选择器
  • 6.2.5 元素状态伪类选择器
  • 6.3 本章小结
  • 第7章 CSS3背景
  • 7.1 background-size属性
  • 7.2 background-origin属性
  • 7.3 background-clip属性
  • 7.4 背景渐变
  • 7.4.1 线性渐变
  • 7.4.2 径向渐变
  • 7.5 本章小结
  • 第8章 CSS3转换、过渡与动画
  • 8.1 CSS3转换(transform)
  • 8.1.1 translate(位移)
  • 8.1.2 scale(缩放)
  • 8.1.3 rotate(旋转)
  • 8.1.4 skew(扭曲)
  • 8.1.5 matrix(矩阵)
  • 8.1.6 transform-origin(转换原点)
  • 8.1.7 3D转换
  • 8.1.8 浏览器前缀
  • 8.2 CSS3过渡(transition)
  • 8.2.1 transition-property属性
  • 8.2.2 transition-duration属性
  • 8.2.3 transition-timing-function属性
  • 8.2.4 transition-timing-delay属性
  • 8.2.5 过渡效果的特点和局限性
  • 8.3 CSS3动画(animation)
  • 8.3.1 keyframes(关键帧)
  • 8.3.2 animation(动画)属性
  • 8.3.3 animation-name属性
  • 8.3.4 animation-iteration-count属性
  • 8.3.5 animation-direction属性
  • 8.3.6 animation-fill-mode属性
  • 8.3.7 animation-fill-mode属性
  • 8.3.8 will-change属性
  • 8.4 案例:CSS3实现旋转3D立方体
  • 8.4.1 3D立方体
  • 8.4.2 旋转3D立方体
  • 8.5 本章小结
  • 第9章 移动Web开发和调试
  • 9.1 Chrome模拟器调试
  • 9.1.1 启用Device Mode功能
  • 9.1.2 移动设备视区模式
  • 9.1.3 模拟网络状态
  • 9.2 spy-debugger调试
  • 9.2.1 Node.js和npm
  • 9.2.2 安装和使用spy-debugger
  • 9.3 本章小结
  • 第10章 移动Web屏幕适配
  • 10.1 Viewport视区
  • 10.1.1 物理像素和CSS像素
  • 10.1.2 视区(Viewport)
  • 10.1.3 设置视区
  • 10.2 响应式布局
  • 10.2.1 媒体查询(Media Query)
  • 10.2.2 案例:响应式页面
  • 10.3 Flex布局
  • 10.3.1 Flex布局—新旧版本的兼容性
  • 10.3.2 Flex容器属性
  • 10.3.3 Flex子元素属性
  • 10.4 rem适配
  • 10.4.1 动态设置根元素font-size
  • 10.4.2 计算rem数值
  • 10.5 vw适配
  • 计算vw数值
  • 10.6 rem适配和vw适配兼容性
  • 10.7 本章小结
  • 第11章 移动Web单击事件
  • 11.1 touch事件
  • 11.1.1 touch事件分类
  • 11.1.2 touch事件对象
  • 11.2 移动Web端单击事件
  • 11.2.1 iOS单击延迟
  • 11.2.2 “单击穿透”问题
  • 11.3 本章小结
  • 第12章 Vue.js核心基础
  • 12.1 MVVM模式
  • 12.1.1 什么是MVC
  • 12.1.2 MVVM模式
  • 12.2 Vue.js背景知识
  • 12.2.1 Vue.js的由来
  • 12.2.2 Vue.js和Webpack
  • 12.3 Vue.js的安装和导入
  • 12.3.1 通过<script>标签导入
  • 12.3.2 通过NPM导入
  • 12.4 Vue.js实例
  • 12.4.1 创建Vue.js实例
  • 12.4.2 用Vue.component()方法注册组件
  • 12.4.3 Vue组件和实例的区别
  • 12.4.4 全局组件和局部组件
  • 12.4.5 组件方法和事件的交互操作
  • 12.4.6 单文件组件
  • 12.5 Vue.js组件的生命周期
  • 12.5.1 beforeCreate和created
  • 12.5.2 beforeMount和mounted
  • 12.5.3 beforeUpdate和updated
  • 12.5.4 beforeDestroy和destroyed
  • 12.5.5 activated和deactivated
  • 12.6 Vue.js模板语法
  • 12.6.1 插值表达式
  • 12.6.2 指令
  • 12.7 Vue.js方法、计算属性和监听器
  • 12.7.1 方法
  • 12.7.2 计算属性
  • 12.7.3 监听器
  • 12.8 Vue.js的动态组件
  • 12.9 Vue.js自定义组件v-model
  • 12.10 本章小结
  • 第13章 Vue.js高级技能
  • 13.1 组件通信
  • 13.1.1 组件通信概述
  • 13.1.2 父组件向子组件通信
  • 13.1.3 子组件向父组件通信
  • 13.1.4 父子组件的双向数据绑定
  • 13.1.5 非父子关系组件的通信
  • 13.2 Vue.js动画
  • 13.2.1 Vue.js动画概述
  • 13.2.2 从一个简单的动画开始
  • 13.2.3 transition组件实现过渡(transition)效果
  • 13.2.4 transition组件实现动画(animation)效果
  • 13.2.5 transition组件同时使用过渡和动画
  • 13.2.6 transition组件的钩子函数
  • 13.2.7 多个元素或组件的过渡效果
  • 13.2.8 列表数据的过渡效果
  • 13.3 Vue.js插槽
  • 13.3.1 默认插槽
  • 13.3.2 具名插槽
  • 13.3.3 动态插槽名
  • 13.3.4 插槽后备
  • 13.3.5 作用域插槽
  • 13.4 本章小结
  • 第14章 Vuex状态管理
  • 14.1 什么是“状态管理模式”
  • 14.2 Vuex概述
  • 14.2.1 Vuex的组成
  • 14.2.2 安装Vuex
  • 14.2.3 一个简单的Store
  • 14.3 State
  • 14.4 Getters
  • 14.5 Mutation
  • 14.6 Action
  • 14.7 Modules
  • 14.8 Vuex适用的场合
  • 14.9 本章小结
  • 第15章 Vue Router路由管理
  • 15.1 什么是单页应用
  • 15.2 Vue Router概述
  • 15.2.1 安装Vue Router
  • 15.2.2 一个简单的组件路由
  • 15.3 动态路由
  • 15.3.1 动态路由匹配
  • 15.3.2 响应路由变化
  • 15.4 导航守卫
  • 15.4.1 全局前置守卫
  • 15.4.2 全局解析守卫
  • 15.4.3 全局后置钩子
  • 15.4.4 组件内的守卫
  • 15.4.5 路由配置守卫
  • 15.5 嵌套路由
  • 15.6 命名视图
  • 15.7 编程式导航
  • 15.8 路由组件传参
  • 15.9 路由重定向、别名及元信息
  • 15.10 Vue Router的路由模式
  • 15.11 滚动行为
  • 15.12 keep-alive
  • 15.12.1 keep-alive缓存状态
  • 15.12.2 keep-alive实现原理浅析
  • 15.13 路由懒加载
  • 15.14 本章小结
  • 第16章 PWA技术全揭秘
  • 16.1 PWA技术介绍
  • 16.1.1 PWA应用的特点
  • 16.1.2 PWA技术结构
  • 16.1.3 PWA技术兼容性
  • 16.2 Service Worker
  • 16.2.1 Service Worker功能和特性
  • 16.2.2 Promise介绍
  • 16.2.3 注册Service Worker
  • 16.2.4 检测Service Worker是否注册成功
  • 16.2.5 安装Service Worker
  • 16.2.6 激活Service Worker
  • 16.2.7 Service Worker更新
  • 16.2.8 Service Worker生命周期
  • 16.2.9 Service Worker拦截请求
  • 16.2.10 Service Worker缓存Cache API
  • 16.2.11 Service Worker离线推送Push API
  • 16.3 Notifications
  • 16.3.1 获取授权
  • 16.3.2 显示通知
  • 16.4 Web App Manifest
  • 16.4.1 导入manifest.json
  • 16.4.2 manifest.json各项设置
  • 16.5 本章小结
  • 第17章 ECMAScript 6语言基础
  • 17.1 变量声明
  • 17.1.1 let,var,const
  • 17.1.2 箭头函数
  • 17.1.3 对象属性和方法的简写
  • 17.2 模块化
  • 17.2.1 ES6模块化概述
  • 17.2.2 import和export
  • 17.3 async/await
  • 17.4 本章小结
  • 第18章 响应式单页面管理系统的开发
  • 18.1 创建index.html
  • 18.2 创建根实例和页面组件
  • 18.3 页面切换
  • 18.4 待办事项页面的开发
  • 18.4.1 创建事项
  • 18.4.2 单条事项组件
  • 18.4.3 数据持久化
  • 18.5 回收站页面的开发
  • 18.5.1 已删除事项列表
  • 18.5.2 单条已删除事项组件
  • 18.6 删除事项和恢复事项联动
  • 18.7 美化页面背景和添加清空按钮
  • 第19章 实战项目:新浪微博Web App
  • 19.1 准备开发环境
  • 19.1.1 安装代码编辑器Sublime Text 3
  • 19.1.2 安装Node.js
  • 19.2 安装vue cli 3初始化前端项目
  • 19.2.1 安装vue cli 3
  • 19.2.2 初始化项目
  • 19.2.3 启动项目
  • 19.3 使用MUI
  • 19.3.1 导入MUI
  • 19.3.2 postcss-px-to-viewport插件的安装和配置
  • 19.4 登录页面的开发
  • 19.5 微博首页的开发
  • 19.5.1 tabbar组件的开发
  • 19.5.2 headerbar组件的开发
  • 19.5.3 4个页签(tab)页面的开发
  • 19.6 新鲜事页面的开发
  • 19.6.1 滚动加载组件的开发
  • 19.6.2 单条微博组件的开发
  • 19.6.3 “发表”按钮的开发
  • 19.6.4 新鲜事微博列表的开发
  • 19.7 发表页面的开发
  • 19.8 消息页面的开发
  • 19.9 我的页面的开发
  • 19.10 微博详情页面的开发
  • 19.10.1 配置二级路由
  • 19.10.2 详情页上半部分的开发
  • 19.10.3 转发和点赞列表的开发
  • 19.10.4 评论列表的开发
  • 19.11 更多回复页面的开发
  • 19.12 评论页面的开发
  • 19.13 页面转场动画
  • 19.13.1 监听路由变化
  • 19.13.2 使用transition动画组件
  • 19.13.3 添加转场动画CSS样式
  • 19.13.4 页面缓存和相同页面组件的复用
  • 19.14 改造PWA应用
  • 19.14.1 配置sw.js文件
  • 19.14.2 设置manifest.json文件
  • 19.15 打包和部署
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

清华大学出版社

清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。