摘要
作为一款优秀的JavaScript框架,jQuery具有表达能力强、支持一次处理多个元素、能解决不同浏览器的兼容性问题等诸多优点,从而受到广大Web开发人员的追捧。本书是一本全面的jQuery手册,详尽介绍了jQuery库、jQueryUI和jQueryMobile,能帮助具备一定Web开发基础知识的读者精通jQuery。
精通jQuery(第2版) 内容简介
《图灵程序设计丛书:精通jQuery(第2版)》全面介绍了jQuery 2.0的各项特性,主要内容包括:JavaScript和jQuery的基础知识,如何使用jQuery核心增强HTML5,如何使用jQuery创建更丰富的用户体验,如何使用富交互功能,jQuery UI以及jQuery Mobile的特性。
《图灵程序设计丛书:精通jQuery(第2版)》适合所有前端开发人员阅读。
精通jQuery(第2版) 目录
第1章 了解jQuery
1.1 jQuery UI和jQuery Mobile
1.2 jQuery插件
1.3 预备知识
1.4 本书组织结构
1.4.1 第一部分:打好基础
1.4.2 第二部分:使用jQuery
1.4.3 第三部分:数据和Ajax
1.4.4 第四部分:jQuery UI
1.4.5 第五部分:jQuery Mobile
1.4.6 第六部分:高级功能
1.5 第2版的新增内容
1.5.1 jQuery核心库有什么变化
1.5.2 jQuery UI有什么变化
1.5.3 jQuery Mobile有什么变化
1.5.4 其他变化
1.6 例子多吗
1.7 示例代码下载
1.8 所需软件
1.8.1 jQuery
1.8.2 HTML编辑器
1.8.3 Web浏览器
1.8.4 Web服务器
1.8.5 Node.js
1.9 图片版权
1.10 小结
第2章 HTML入门
2.1 基本的HTML文档
2.2 HTML元素剖析
2.3 属性
2.4 元素内容
2.5 空元素
2.6 文档结构
2.6.1 元数据元素
2.6.2 内容元素
2.7 元素层次关系
2.7.1 父子关系
2.7.2 祖先?后代关系
2.7.3 兄弟关系
2.8 文档对象模型
2.8.1 使用DOM
2.8.2 修改DOM
2.8.3 修改样式
2.8.4 处理事件
2.9 小结
第3章 CSS基础
3.1 上手CSS
3.2 行内样式
3.3 内嵌样式
3.4 外部样式表
3.5 理解CSS选择器
3.5.1 属性选择器
3.5.2 关系选择器
3.5.3 伪元素和伪类选择器
3.5.4 联合选择器和反选择器
3.6 理解样式层叠
3.6.1 样式层叠原理
3.6.2 使用important规则微调样式应用的顺序
3.6.3 通过"专一程度"和顺序评估决定样式优先级
3.7 样式的单位
3.7.1 颜色
3.7.2 长度
3.8 属性速记法和自定义值
3.9 小结
第4章 JavaScript基础
4.1 上手JavaScript
4.2 语句
4.3 函数
4.3.1 带参数的函数
4.3.2 有返回值的函数
4.4 变量和类型
4.4.1 基本数据类型
4.4.2 生成对象
4.4.3 使用对象
4.5 JavaScript运算符
4.5.1 条件语句
4.5.2 相等运算符和恒等运算符
4.5.3 显式类型转换
4.6 数组
4.6.1 数组字面量
4.6.2 读取和修改数组元素
4.6.3 枚举数组内容
4.6.4 数组内建方法
4.7 错误处理
4.8 比较undefined和null值
4.8.1 检查变量或者属性是否为null或undefined
4.8.2 区分null和undefined
4.9 小结
第5章 jQuery基础
5.1 安装jQuery
5.2 第一个jQuery脚本
5.3 理解jQuery的$函数
5.4 等待DOM就绪
5.4.1 另一种写法
5.4.2 延迟ready事件的触发时间
5.5 选择元素
5.6 理解选择结果
5.6.1 确定jQuery对象对应的上下文对象
5.6.2 处理DOM对象
5.7 修改多个元素与链式方法调用
5.8 事件处理
5.9 小结
第6章 选择元素
6.1 选择更多元素
6.2 限制选择范围
6.2.1 从结果集中获取某个元素
6.2.2 获取元素子集
6.2.3 过滤元素
6.2.4 基于后代元素过滤结果集
6.3 以映射方式处理结果集
6.4 检测结果集
6.5 修改、回退结果集
6.6 访问DOM
6.6.1 访问后代元素
6.6.2 访问祖先元素
6.6.3 访问兄弟元素
6.7 小结
第7章 操控DOM
7.1 创建新元素
7.1.1 使用$函数创建新元素
7.1.2 通过克隆已有元素生成新元素
7.1.3 使用DOM API创建新元素
7.2 添加子元素或后代元素
7.2.1 插入第一个子元素
7.2.2 把同一组元素插入到页面的不同位置
7.2.3 插入jQuery对象
7.2.4 使用回调函数动态插入子元素
7.3 封装(包裹)元素
7.3.1 把多个元素封装到一个元素之中
7.3.2 封装元素的内容
7.3.3 使用回调函数封装元素
7.4 插入兄弟元素
7.4.1 把jQuery对象中的元素插入为兄弟元素
7.4.2 使用回调函数动态插入兄弟元素
7.5 替换元素
7.6 删除元素
7.6.1 分离元素
7.6.2 清空元素
7.6.3 删除元素的父元素
7.7 小结
第8章 处理元素
8.1 处理元素字面属性和元素对象定义属性
8.1.1 设置属性值
8.1.2 一次设置多个属性
8.1.3 动态设置属性值
8.1.4 删除属性
8.1.5 使用prop方法
8.2 处理class属性
8.2.1 使用函数动态添加或删除class
8.2.2 切换class
8.2.3 切换多个class
8.2.4 切换全部的class
8.2.5 单方向切换class
8.2.6 动态切换class
8.3 处理CSS样式
8.3.1 获取并设置单个CSS值
8.3.2 获取多个CSS属性
8.3.3 一次设置多个CSS样式属性
8.3.4 以相对值设置样式属性
8.3.5 使用回调函数设置样式属性
8.3.6 针对具体属性的CSS便捷方法
8.4 处理元素内容
8.4.1 设置元素内容
8.4.2 使用回调函数设置元素内容
8.5 处理表单元素
8.5.1 设置表单元素的值
8.5.2 使用回调函数设置表单元素的值
8.6 为元素关联数据
8.7 小结
第9章 事件
9.1 事件处理
9.1.1 用一个函数处理多种事件
9.1.2 为事件处理函数提供数据
9.1.3 阻止事件的默认行为
9.1.4 撤销事件处理函数
9.1.5 仅执行一次事件处理函数
9.2 动态绑定事件处理函数
9.3 人工调用事件处理函数
9.3.1 使用Event对象
9.3.2 triggerHandler方法
9.4 事件快捷方法
9.4.1 document对象事件快捷方法
9.4.2 浏览器事件快捷方法
9.4.3 鼠标事件快捷方法
9.4.4 表单事件快捷方法
9.4.5 键盘事件快捷方法
9.5 小结
第10章 jQuery特效
10.1 基础特效
10.1.1 切换元素的显示状态
10.1.2 单向变换
10.1.3 以动画方式改变元素的显示状态
10.1.4 使用动画回调函数
10.1.5 创建循环动画
10.2 滑动特效
10.3 淡入淡出特效
10.4 实现定制特效
10.4.1 使用绝对值设置动画属性
10.4.2 使用相对值设置动画属性
10.5 创建并管理动画队列
10.5.1 显示动画队列中的内容
10.5.2 停止当前动画并清理动画队列
10.5.3 在动画队列中插入延时
10.5.4 在动画队列中插入自定义函数
10.6 启用或者禁用动画特效
10.7 小结
第11章 重构示例页面:第一部分
11.1 回顾示例文档
11.2 添加更多的花卉产品
11.3 添加翻页按钮
11.4 处理提交按钮
11.5 实现翻页事件处理函数
11.6 计算订购产品总数
11.7 禁用JavaScript
11.8 小结
第12章 数据模板
12.1 模板解决什么问题
12.2 使用模板库
12.3 第一个数据模板示例
12.3.1 定义数据
12.3.2 定义模板
12.3.3 使用模板
12.4 模板逻辑
12.4.1 依据条件生成内容
12.4.2 遍历数组和对象属性
12.4.3 改变数据上下文
12.5 自定义助手指令
12.5.1 编写条件助手指令
12.5.2 返回更复杂的内容
12.5.3 在助手指令处理函数中使用可选参数
12.5.4 自定义模板属性
12.6 小结
第13章 处理表单
13.1 准备Node.js服务器
13.2 回顾表单事件方法
13.2.1 处理表单焦点
13.2.2 处理值的变化
13.2.3 处理表单提交
13.3 验证表单数据
13.3.1 插件内建的检查功能
13.3.2 指定错误提示信息
13.3.3 自定义检查
13.3.4 定制错误提示的显示格式
13.3.5 使用问题摘要
13.4 小结
第14章 Ajax:第一部分
14.1 Ajax快捷方法
14.1.1 发起Ajax GET请求
14.1.2 Ajax POST请求
14.1.3 指定数据类型
14.2 避免最常见的Ajax陷阱
14.3 处理特定任务的快捷方法
14.3.1 获取HTML片段
14.3.2 获取并执行脚本
14.3.3 获取JSON数据
14.4 Ajax Forms插件
14.5 小结
第15章 Ajax:第二部分
15.1 使用底层API发起简单的Ajax请求
15.2 理解jqXHR对象
15.3 设置请求URL
15.4 发起POST请求
15.5 Ajax事件
15.5.1 处理成功完成的请求
15.5.2 处理失败的请求
15.5.3 处理已经完成的请求
15.5.4 在请求发出之前配置请求
15.5.5 为同一事件指定多个处理函数
15.5.6 设置事件上下文对象
15.6 全局Ajax事件方法
15.7 为Ajax请求配置基础选项
15.7.1 设置请求超时选项和报头
15.7.2 发送JSON数据到服务器
15.8 高级配置选项
15.8.1 发起同步请求
15.8.2 忽略重复(未修改过的)数据
15.8.3 处理statusCode
15.8.4 整理响应数据
15.8.5 控制数据格式转换
15.9 设置及过滤Ajax请求
15.9.1 定义默认选项
15.9.2 过滤请求
15.10 小结
第16章 重构示例页面:第二部分
16.1 重温重构示例
16.2 更新Node.js脚本
16.3 为Ajax做准备
16.4 处理产品数据来源
16.5 添加表单验证
16.6 使用Ajax提交表单数据
16.7 处理服务器响应
16.7.1 添加新表单
16.7.2 完成Ajax请求
16.7.3 处理数据
16.8 小结
第17章 安装jQuery UI
17.1 获取jQuery UI
17.1.1 选定一个主题
17.1.2 生成jQuery UI定制下载版本
17.2 安装jQuery UI开发版
17.3 把jQuery UI部署到生产环境
17.4 小结
第18章 按钮、进度条与滑动条组件
18.1 jQuery UI按钮
18.1.1 配置按钮组件
18.1.2 在按钮上使用jQuery UI图标
18.1.3 在按钮上使用自定义图片
18.1.4 button方法
18.1.5 按钮事件
18.2 创建不同类型的按钮
18.2.1 切换按钮
18.2.2 按钮组
18.3 jQuery UI进度条
18.3.1 创建进度条
18.3.2 创建模糊进度
18.3.3 进度条方法
18.3.4 进度条事件
18.4 jQuery UI滑动条组件
18.4.1 配置滑动条
18.4.2 滑动条组件方法
18.4.3 滑动条组件事件
18.5 小结
第19章 自动完成和折叠菜单组件
19.1 jQuery UI自动完成组件
19.1.1 让输入框支持自动完成
19.1.2 配置自动完成组件
19.1.3 自动完成组件方法
19.1.4 自动完成组件事件
19.2 jQuery UI折叠菜单组件
19.2.1 创建折叠菜单
19.2.2 配置折叠菜单组件
19.2.3 折叠菜单方法
19.2.4 折叠菜单组件事件
19.3 小结
第20章 标签组件
20.1 创建标签
20.2 使用Ajax获取标签内容
20.3 配置标签组件
20.3.1 选取活跃标签
20.3.2 禁用某些标签
20.3.3 改变激活标签的事件
20.3.4 可折叠的标签
20.4 标签组件方法
20.4.1 增加或者删除标签
20.4.2 触发标签的Ajax请求
20.5 标签组件事件
20.5.1 拦截Ajax请求
20.5.2 修改远程标签的数据
20.5.3 用标签显示表单
20.6 小结
第21章 日期拾取器组件
21.1 生成日期拾取器
21.2 配置日期拾取器
21.2.1 基本设置
21.2.2 管理日期选择范围
21.2.3 设置日期拾取器的外观
21.3 日期拾取器方法
21.3.1 使用脚本获取和设置日期
21.3.2 使用脚本控制弹出式日期拾取器的显示和隐藏
21.4 日期拾取器事件
21.4.1 响应月份或年份的变更
21.4.2 响应关闭弹出式日期拾取器事件
21.5 本地化日期拾取器
21.6 小结
第22章 对话框组件和微调控制组件
22.1 jQuery UI对话框组件
22.1.1 创建对话框
22.1.2 配置对话框
22.1.3 对话框组件方法
22.1.4 对话框组件事件
22.2 jQuery UI微调控制组件
22.2.1 在HTML5 input元素上应用微调控制组件
22.2.2 配置微调控制组件
22.2.3 微调控制组件方法
22.2.4 微调控制组件事件
22.3 小结
第23章 菜单组件和提示说明组件
23.1 jQuery UI菜单组件
23.1.1 创建菜单
23.1.2 配置菜单组件
23.1.3 菜单组件的方法
23.1.4 菜单组件事件
23.2 jQuery UI提示说明组件
23.2.1 创建提示说明组件
23.2.2 配置提示说明组件
23.2.3 提示说明组件的方法
23.2.4 提示说明组件事件
23.3 小结
第24章 使用拖放
24.1 创建拖曳元素
24.1.1 配置拖曳组件
24.1.2 使用draggable方法
24.1.3 使用拖曳事件
24.2 使用接收组件
24.2.1 高亮接收元素
24.2.2 处理遮盖元素
24.2.3 配置接收组件
24.2.4 使用droppable方法
24.3 优化拖放功能
24.3.1 scope选项
24.3.2 使用辅助元素
24.3.3 "吸附"到元素边界
24.4 小结
第25章 其他组件
25.1 使用sortable组件
25.1.1 获取排序之后的新顺序
25.1.2 配置sortable组件
25.1.3 使用sortable方法
25.1.4 sortable事件
25.2 selectable组件
25.2.1 配置selectable组件
25.2.2 使用selectable方法
25.2.3 selectable组件事件
25.3 resizable组件
25.4 小结
第26章 重构示例页面:第三部分
26.1 回顾重构示例
26.2 展示商品
26.3 添加购物车
26.3.1 增加一个div元素包住折叠菜单
26.3.2 添加表格
26.3.3 输入值变更
26.4 装饰:应用主题样式
26.4.1 为更多元素应用框架样式
26.4.2 为表格增加圆角效果
26.5 生成jQuery UI按钮
26.6 添加完成购买对话框
26.7 处理下单按钮的单击事件
26.8 完成订单
26.9 小结
第27章 jQuery Mobile入门
27.1 安装jQuery Mobile
27.1.1 下载jQuery Mobile
27.1.2 安装jQuery Mobile
27.2 jQuery Mobile工作原理
27.2.1 自动增强技术
27.2.2 视口
27.2.3 jQuery Mobile事件
27.2.4 响应设备手持方向的变化
27.3 处理移动设备
27.3.1 在移动开发时应该避免的两大"陷阱"
27.3.2 避免错误的假设
27.3.3 避免不切实际的仿真和测试
27.3.4 移动浏览器仿真器
27.4 小结
第28章 页、主题及布局
28.1 什么是jQuery Mobile页
28.1.1 为一个页添加页头和页脚
28.1.2 在页面文件中添加页
28.1.3 链接其他页面文件
28.2 使用脚本控制jQuery Mobile页
28.2.1 改变当前页
28.2.2 当前页是哪个
28.2.3 后台载入页
28.3 与页相关的事件
28.3.1 页面初始化事件
28.3.2 页面加载事件
28.3.3 响应页面切换
28.4 使用jQuery Mobile主题
28.5 创建网格布局
28.6 小结
第29章 对话框与弹窗组件
29.1 jQuery Mobile对话框组件
29.1.1 创建对话框组件
29.1.2 配置对话框组件
29.1.3 对话框组件方法
29.1.4 对话框组件事件
29.2 jQuery Mobile弹窗组件
29.2.1 创建弹窗
29.2.2 配置弹窗
29.2.3 弹窗组件的方法
29.2.4 弹窗组件事件
29.3 小结
第30章 按钮和折叠块组件
30.1 jQuery Mobile按钮
30.1.1 生成按钮
30.1.2 配置jQuery Mobile按钮组件
30.1.3 按钮组件的方法
30.1.4 按钮事件
30.2 jQuery Mobile导航栏组件
30.2.1 配置jQuery Mobile导航栏组件
30.2.2 导航栏组件支持的方法和事件
30.3 折叠块组件
30.3.1 生成折叠块
30.3.2 配置jQuery Mobile折叠块组件
30.3.3 折叠块组件的方法
30.3.4 折叠块事件
30.4 jQuery Mobile折叠菜单
30.4.1 配置折叠菜单
30.4.2 折叠菜单的方法
30.4.3 折叠菜单事件
30.5 小结
第31章 jQuery Mobile表单
31.1 创建表单元素组件
31.2 文本输入组件
31.2.1 配置文本输入组件
31.2.2 文本输入组件方法
31.2.3 文本输入组件事件
31.3 滑动选择器组件和范围选择器组件
31.3.1 配置滑动选择器组件和范围选择器组件
31.3.2 滑动选择器与范围选择器支持的方法
31.3.3 滑动选择器事件
31.3.4 范围选择器组件事件
31.4 选择菜单组件
31.4.1 配置选择菜单组件
31.4.2 选择菜单组件的方法
31.4.3 选择菜单组件事件
31.5 轻触开关组件
31.6 复选框和单选钮组件
31.6.1 创建复选框
31.6.2 创建并格式化单选钮
31.6.3 配置复选框和单选钮组件
31.6.4 复选框和单选钮组件方法
31.6.5 复选框和单选钮组件事件
31.7 小结
第32章 列表组件与面板组件
32.1 列表组件
32.1.1 配置列表组件
32.1.2 列表组件方法
32.1.3 列表组件事件
32.2 面板组件
32.2.1 配置面板组件
32.2.2 面板组件方法
32.2.3 面板组件事件
32.3 小结
第33章 重构移动版示例:第四部分
33.1 从基础开始
33.2 用程序添加花卉产品
33.3 生成购物车
33.3.1 增加修改数量功能
33.3.2 在商品详情页添加购买按钮
33.4 实现支付
33.5 小结
第34章 jQuery实用方法
34.1 再访队列:使用常规队列
34.2 数组实用方法
34.2.1 使用grep方法
34.2.2 使用inArray方法
34.2.3 使用map方法
34.2.4 使用merge方法
34.2.5 使用unique方法
34.3 数据类型实用方法
34.4 数据有关实用方法
34.4.1 序列化表单数据
34.4.2 解析数据
34.4.3 去除字符串首尾空白
34.5 其他实用方法
34.6 小结
第35章 jQuery UI特效及CSS框架
35.1 使用jQuery UI特效
35.1.1 让颜色变化支持动画
35.1.2 让切换类样式支持动画
35.1.3 jQuery UI动画
35.2 使用jQuery UI CSS框架
35.2.1 组件容器样式
35.2.2 圆角样式
35.2.3 交互状态样式
35.2.4 提示信息样式
35.3 小结
第36章 延迟对象
36.1 延迟对象第一例
36.2 其他回调
36.2.1 通知延迟对象任务失败
36.2.2 覆盖两个出口(任务成功和任务失败)
36.2.3 与出口关的回调函数
36.3 使用多个回调函数
36.4 利用多个延迟对象的出口
36.5 提供进度信息
36.6 获取延迟对象的状态
36.7 Ajax延迟对象
36.8 小结
精通jQuery(第2版) 精彩文摘
第1章 了解jQuery
jQuery的核心库的工作稍显枯燥:通过处理浏览器加载HTML时动态创建的模型(即DOM:文档对象模型,后面我会详细介绍),达到动态修改页面内容的目标。既然你会捧起这本书,想必你已经有一些处理DOM的经验,用过别的JavaScript库或者浏览器内置的API(应用程序接口),并渴望找出更好的方法。
jQuery绝非“更好”所能形容。它使DOM操作变成了一件愉快的事,有时候甚至有趣得不得了。jQuery中处理DOM的一些方法相当优雅,那些纯粹的苦活累活变得既简单又容易。一旦开始使用jQuery,你就永远不会想回到过去了。我之所以在项目中使用jQuery,主要原因有以下几个。
jQuery表达能力很强。我能用更少的代码完成更多的工作。
jQuery支持一次处理多个元素。传统的DOM API需要先选取再迭代处理每一个元素,而jQuery大大减少了遍历元素的次数,也减少了出错机会。
jQuery解决了不同浏览器的兼容性问题。我再也不必神经兮兮的,担心IE是否支持某个特性:只管告诉jQuery我想要做什么,它自会替我搞定。
jQuery是开源的。如果我想知道某些功能是怎么实现的,或者发现哪儿不对劲,可以直接阅读它的源代码,并且可以按需修改它。
jQuery的伟大之处在于把Web开发中那些难以处理的苦差事变成了既简单又快捷的轻松之事。有了jQuery,我别无他求。当然,jQuery并不完美,它也有那么一两处短板,稍后我会提到。但无论如何,瑕不掩瑜,我非常喜欢jQuery,也希望你能逐步发现它的强大之处并乐于使用它。
本文来自牛奶煮萝莉投稿,不代表电子书资源网立场,如若转载,请联系原作者获取。