第1章 初识jQuery 1
1.1 jQuery概述 1
1.1.1 jQuery能帮我做什么 1
1.1.2我需要学习jQuery 2
1.2使用jQuery 5
1.2.1下载jQuery 6
1.2.2安装jQuery 6
1.2.3测试JQuery 7
1.3 jQuery框架的优势 8
1.4 jQuery框架核心功能 9
1.4.1对外接口单一让使用更简单 9
1.4.2链式语法让编码更快速、优雅 9
1.4.3模仿CSS选择器让选取元素更精确、灵活 11
1.4.4扩展接口让jQuery更开放、富有活力 13
1.5初学jQuery最容易混淆的几个概念 14
1.5.1 jQuery对象不等于DOM对象 14
1.5.2 jQuery对象与DOM对象之间的转换 15
1.5.3 jQuery的ready不等于JavaScript的load 17
1.6学习资源 19
1.6.1 jQuery开发工具 19
1.6.2 jQuery参考手册 19
1.6.3 jQuery在线资源 20
第2章 使用选择器 21
2.1基本选择器 21
2.1.1 ID选择器 21
2.1.2标签选择器 23
2.1.3类选择器 24
2.1.4通配选择器 25
2.1.5组选择器 26
2.2层级选择器 27
2.2.1包含选择器 28
2.2.2子选择器 29
2.2.3相邻选择器 30
2.2.4兄弟选择器 31
2.2.5层级选择器综合应用 32
2.2.6解析层级选择器实现原理 34
2.3简单的伪类选择器 37
2.3.1特定位置选择器 37
2.3.2指定范围选择器 39
2.3.3排除选择器 40
2.3.4特殊选择器 41
2.3.5解析简单伪类选择器的实现原理 42
2.4与内容相关的伪类选择器 42
2.4.1匹配包含文本选择器 43
2.4.2匹配包含元素选择器 44
2.4.3包含判断选择器 45
2.4.4解析内容过滤器实现原理 45
2.5与元素显示状态相关的伪类选择器 46
2.6匹配子元素的伪类选择器 47
2.7与表单对象相关的伪类选择器 49
2.8与表单属性相关的伪类选择器 53
2.9属性选择器 54
2.10 j Query选择器应用优化 58
第3章 使用过滤器 61
3.1过滤 61
3.1.1类过滤 61
3.1.2下标过滤 63
3.1.3表达式过滤 64
3.1.4判断 67
3.1.5映射 67
3.1.6清洗 69
3.1.7截取 69
3.2查找 70
3.2.1向下查找后代元素 71
3.2.2向上查找祖先元素 73
3.2.3向上查找兄弟元素 78
3.2.4向下查找兄弟元素 80
3.2.5查找兄弟元素 83
3.2.6添加查找对象 84
3.3串联 84
3.3.1绑定前后jQuery对象 85
3.3.2返回前一个jQuery对象 86
第4章 DOM操作 87
4.1创建节点 88
4.1.1创建元素 89
4.1.2输入文本 90
4.1.3设置属性 90
4.2插入内容 92
4.2.1内部插入 92
4.2.2外部插入 96
4.3删除内容 98
4.3.1移出 99
4.3.2清空 101
4.3.3分离 101
4.4克隆内容 103
4.5替换内容 105
4.6包裹内容 107
4.6.1外包 107
4.6.2内包 108
4.6.3总包 110
4.6.4卸包 111
4.7属性操作 111
4.7.1设置属性 112
4.7.2访问属性 115
4.7.3删除属性 118
4.8类操作 120
4.8.1添加类样式 120
4.8.2删除类样式 121
4.8.3切换类样式 122
4.8.4判断样式 124
4.9读写文本和值 124
4.9.1读写HTML 124
4.9.2读写文本 126
4.9.3读写值 127
4.10样式表操作 129
4.10.1读写CSS样式 129
4.10.2绝对定位 133
4.10.3相对定位 134
4.10.4设置大小 136
4.11访问文档树 137
第5章 事件处理 140
5.1事件处理模型 140
5.1.1原始事件模型 140
5.1.2 DOM事件模型 141
5.1.3 IE事件模型 144
5.2事件处理机制 146
5.2.1 Event对象 147
5.2.2事件流 148
5.2.3事件控制 151
5.3 j Query事件封装机制 151
5.3.1注册事件 152
5.3.2注销事件 155
5.4 jQuery事件应用 157
5.4.1事件触发 158
5.4.2事件切换 159
5.4.3事件委派 163
5.4.4事件命名空间 165
5.4.5绑定多个事件 167
5.4.6 自定义事件 168
5.4.7页面初始化事件 169
第6章 Ajax应用 172
6.1 XMLHttpRequest基础 172
6.1.1 XMLHttpRequest对象 172
6.1.2实例化XMLHttpRequest 173
6.1.3建立连接 174
6.1.4请求和响应 175
6.2 jQueyAjax 177
6.2.1设计一个简单的示例 178
6.2.2 GET请求 179
6.2.3 POST请求 182
6.2.4 ajax()方法请求 184
6.2.5响应状态 186
6.2.6响应信息 188
6.2.7载入网页文件 190
6.2.8预设参数项 192
6.2.9预处理字符串 193
第7章 动画设计 196
7.1 CSS动画设计基础 196
7.2显隐动画 198
7.2.1简单的显示和隐藏 199
7.2.2控制显示速度 200
7.2.3显隐切换 201
7.2.4折叠动画 202
7.2.5树形动画 204
7.2.6选项卡动画 207
7.3滑动动画 208
7.3.1显隐滑动效果 209
7.3.2显隐切换滑动 210
7.4渐变效果 212
7.4.1淡入和淡出 212
7.4.2设置淡出透明效果 214
7.4.3渐变切换 215
7.5复杂动画 216
7.5.1模拟show()方法的效果 217
7.5.2自定义动画 218
7.5.3动态定位 221
7.5.4停止动画 222
7.5.5关闭动画 223
7.5.6设置动画频率 224
7.5.7延迟动画 225
7.6动画队列 225
7.6.1添加动画队列 225
7.6.2显示动画队列 227
7.6.3更新动画队列 227
7.6.4删除动画队列 229
第8章 工具函数 230
8.1 jQuery标志 230
8.1.1检测用户代理 230
8.1.2检测版本号 233
8.1.3检测盒模型 234
8.1.4检测功能或缺陷 234
8.2兼容JavaScript库 235
8.3对象和集合操作 238
8.3.1处理字符串 238
8.3.2把对象转换为字符串 239
8.3.3判断数组类型 240
8.3.4判断函数类型 241
8.3.5判断特殊对象 242
8.3.6对数组和集合进行迭代 243
8.3.7生成数组 245
8.3.8对数组进行筛选 246
8.3.9对数组进行转换 247
8.3.10把多个数组合并在一起 249
8.3.11删除数组中重复元素 251
8.3.12在数组中查找指定值 252
8.4缓存 252
8.4.1定义缓存 253
8.4.2读取缓存 255
8.4.3删除缓存 256
第9章 功能扩展 259
9.1自定义插件 259
9.1.1 jQuery插件形式 259
9.1.2自定义jQuery插件基本规则 260
9.1.3使用extend()函数 261
9.1.4自定义jQuery函数 265
9.1.5自定义jQuery命令 267
9.1.6自定义选择器 271
9.2封装和优化插件 275
9.2.1封装插件 275
9.2.2优化插件 277
9.3案例实战:制作jQuery文字提示插件 283
9.3.1功能讲解 283
9.3.2构建结构 283
9.3.3设计思路 284
9.3.4难点突破 286
9.3.5代码实现 287
9.3.6应用插件 290
第10章 表格开发 291
10.1数据排序 291
10.1.1构建符合数据排序的表格结构 291
10.1.2 JavaScript的基本排序方法 293
10.1.3实现表格基本排序 296
10.1.4优化排序性能 298
10.1.5设计其他类型排序 299
10.1.6完善排序交互的视觉效果 301
10.2数据分页 303
10.2.1服务器端分页 303
10.2.2 JavaScript实现分页 307
10.3数据过滤 310
10.3.1快速过滤数据 310
10.3.2处理多关键字匹配 311
10.3.3处理特定列过滤 311
10.3.4合成数据过滤器 312
10.4数据编辑 314
10.4.1快速编辑数据 314
10.4.2完善数据编辑功能 315
第11章 表单开发 318
11.1设计可用性表单 318
11.1.1设计表单结构 318
11.1.2设计表单图标 320
11.1.3设计提示信息 321
11.1.4设计条件字段 322
11.2表单验证 324
11.2.1验证服务概述 324
11.2.2认识正则表达式 325
11.2.3字符匹配 327
11.2.4重复匹配 331
11.2.5高级匹配 335
11.2.6匹配操作 342
11.2.7联系表单验证 347
11.3增强型表单 350
11.3.1自适应多行文本框 350
11.3.2注册码文本框 352
11.3.3掩码输入文本框 357
第12章 jQuery UI开发概述 362
12.1 jQuery UI开发 362
12.1.1设计思想 362
12.1.2设计体验 366
12.2使用jQuery UI库 372
12.2.1认识jQuer插件库 373
12.2.2使用外部插件 373
12.2.3认识UI插件 376
12.2.4建立开发环境 377
12.2.5 jQuery UI库结构 377
12.2.6主题定制器 378
12.2.7如何使用jQuery UI组件 379
12.2.8组件类别 379
12.2.9浏览器支持 380
第13章 jQuery UI交互开发 381
13.1拖放 381
13.1.1拖动对象 382
13.1.2投放对象 388
13.2缩放 392
13.3选择 396
13.4排序 400
第14章 jQuery UI部件开发 405
14.1选项卡 405
14.2手风琴 410
14.3对话框 415
14.4滑动条 420
14.5日期选择器 425
第15章 jQuery UI特效开发 431
15.1特效核心 432
15.2高亮 434
15.3弹跳 436
15.4摇晃 439
15.5转换 440
15.6缩放 441
15.7爆炸 442
15.8抖动 444
15.9落体 445
15.10滑动 447
15.11剪辑 448
15.12百叶窗 449
15.13折叠 450
第16章 jQuery框架透析之函数式基础 452
16.1定义函数 453
16.1.1构造函数 453
16.1.2函数直接量 455
16.1.3选择恰当的方法 456
16.2使用函数 458
16.2.1函数调用 458
16.2.2生命周期 459
16.2.3形参和实参 460
16.2.4参数对象Arguments 461
16.2.5回调函数callee 463
16.2.6返回值 463
16.3函数对象 464
16.4动态指针 466
16.4.1认识this 466
16.4.2 this对象 468
16.4.3 this应用 471
16.4.4 this陷阱 474
16.5动态调用 478
16.6函数作用域 481
16.6.1词法作用域与执行作用域 482
16.6.2作用域链 484
16.6.3调用对象 485
16.7闭包函数 486
16.7.1认识闭包 487
16.7.2闭包基本特性 488
16.7.3闭包基本用法 489
16.7.4闭包标识系统 491
16.7.5闭包函数作用域 492
16.7.6闭包函数生存周期 494
16.7.7比较函数和闭包 495
16.7.8闭包函数与函数实例 496
16.7.9闭包函数和调用对象 499
16.7.10闭包独立性 501
16.7.11构造函数闭包 502
16.7.12应用闭包函数 503
16.7.13闭包副作用 507
第17章 jQuery框架透析之面向对象基础 510
17.1定义对象 510
17.1.1认识对象 511
17.1.2定义对象 512
17.2使用对象 513
17.2.1引用对象 513
17.2.2销毁对象 514
17.2.3定义对象属性 514
17.2.4访问对象属性 515
17.2.5操作对象属性 515
17.2.6操作对象方法 516
17.3对象作用域 517
17.3.1公共作用域 517
17.3.2私有作用域 518
17.3.3静态作用域 518
17.3.4对象指针this 518
17.4对象类型 519
17.4.1构造对象 519
17.4.2实例对象 521
17.4.3原型对象 521
17.4.4构造器constructor 524
17.5核心方法 525
17.5.1 toString()方法 526
17.5.2 valueOf()方法 527
17.5.3 hasOwnProperty()方法 528
17.5.4 propertylsEnumerable()方法 528
17.5.5 isPrototypeOf()方法 530
17.6核心对象 530
17.6.1对象系统 531
17.6.2 Global对象 531
17.6.3 Math对象 532
17.6.4 Date对象 534
17.7类型 535
17.7.1认识类 535
17.7.2定义类 536
17.8接口 541
17.8.1认识接口 541
17.8.2定义接口 542
17.9原型 546
17.9.1认识prototype 546
17.9.2原型特性 548
17.9.3原型操作 550
17.9.4定义静态原型 554
17.9.5原型域和原型域链 554
17.10继承 556
17.10.1原型继承 556
17.10.2类继承(上) 557
17.10.3类继承(下) 561
17.10.4实例继承 563
17.10.5复制继承 564
17.10.6克隆继承 565
17.10.7混合继承 565
17.10.8多重继承 566
17.11封装 570
17.11.1被动封装 570
17.11.2主动封装 571
17.11.3静态方法 573
17.12重载和多态 575
17.12.1重载 575
17.12.2覆盖 575
17.12.3多态 576
17.13构造和析构 577
17.13.1构造 577
17.13.2析构 579
17.14扩展 580
17.14.1超类和子类 580
17.14.2元类 581
第18章 jQuery框架透析之实战 583
18.1设计思路 583
18.2设计框架 584
18.2.1定义构造函数 585
18.2.2返回jQuery对象 586
18.2.3设计作用域 587
18.2.4跨域访问 588
18.2.5设计选择器 589
18.2.6设计迭代器 590
18.2.7设计扩展接口 592
18.2.8解决参数传递问题 594
18.2.9设计名字空间 595
18.3构建j Query对象 596
18.4构建jQuery DOM元素 599
18.4.1生成DOM元素 599
18.4.2间接引用DOM节点 602
18.4.3采用CSS方式查找DOM节点 604
18.5类数组 607
18.5.1构建类数组 607
18.5.2操作类数组 608
18.6 Sizzle引擎 612
18.6.1设计思路 612
18.6.2设计框架 614