第1章 了解JavaScript 1
1.1 JavaScript是什么 1
1.2 JavaScript不是Java 2
1.3 JavaScript的起源 3
1.4 JavaScript可以做什么 3
1.5 JavaScript不能做什么 4
1.6 JavaScript及其他 4
1.6.1 jQuery是什么 4
1.6.2 Ajax是什么 4
1.7 组合式语言 6
1.7.1 对象 6
1.7.2 属性 6
1.7.3 方法 7
1.7.4 将对象、属性和方法组合在一起 7
1.7.5 DOM简介 7
1.8 处理事件 8
1.9 值和变量 8
1.9.1 操作符 9
1.9.2 赋值和比较 9
1.9.3 比较 10
1.10 编写对JavaScript友好的HTML 10
1.10.1 结构、表现和行为 11
1.10.2 div和span 11
1.10.3 class和id 11
1.11 要使用什么工具 12
第2章 开始 14
2.1 将脚本放在哪里 14
2.2 关于函数 15
2.3 使用外部脚本 16
2.4 在脚本中添加注释 17
2.5 向用户发出警告 18
2.6 确认用户的选择 20
2.7 提示用户 21
2.8 用链接对用户进行重定向 23
2.9 使用JavaScript改进链接 25
2.10 使用多级条件 28
2.11 处理错误 31
第3章 第一个Web应用程序 33
3.1 用循环进行重复操作 33
3.2 将值传递给函数 38
3.3 探测对象 39
3.4 处理数组 41
3.5 处理有返回值的函数 42
3.6 更新数组 43
3.7 使用do/while循环 45
3.8 以多种方式调用脚本 46
3.9 组合使用JavaScript和CSS 48
3.10 检查状态 51
3.11 处理字符串数组 56
第4章 处理图像 60
4.1 创建翻转器 60
4.2 创建更有效的翻转器 62
4.3 构建三状态翻转器 66
4.4 由链接触发翻转器 67
4.5 让多个链接触发一个翻转器 69
4.6 处理多个翻转器 72
4.7 创建循环的广告条 75
4.8 在循环广告条中添加链接 77
4.9 建立循环式幻灯片 79
4.10 显示随机图像 81
4.11 随机开始循环显示图像 82
第5章 窗口与框架 84
5.1 防止页面显示在框架中 84
5.2 设置目标 85
5.3 用JavaScript加载iframe 87
5.4 iframe的使用 88
5.5 创建动态iframe 90
5.6 在文档之间共享函数 91
5.7 打开新窗口 93
5.8 为窗口加载不同的内容 96
第6章 表单处理 98
6.1 选择并转移导航菜单 99
6.2 动态地改变菜单 102
6.3 建立必须填写的字段 104
6.4 根据其他字段对字段进行检查 108
6.5 标识有问题的字段 110
6.6 准备进行表单验证 112
6.7 处理单选按钮 116
6.8 用一个字段设置另一个字段 119
6.9 检验Zip编码 121
6.10 验证电子邮件地址 125
第7章 表单和正则表达式 130
7.1 用正则表达式验证电子邮件地址 130
7.2 验证文件名 135
7.3 提取字符串 137
7.4 格式化字符串 139
7.5 对字符串进行格式化和排序 142
7.6 对字符串进行格式化和验证 143
7.7 使用正则表达式替换元素 146
第8章 处理事件 148
8.1 处理窗口事件 148
8.1.1 onload事件 148
8.1.2 onunload事件 151
8.1.3 onbeforeunload事件 151
8.1.4 onresize事件 153
8.1.5 onmove事件 153
8.1.6 onabort事件 153
8.1.7 onerror事件 153
8.1.8 onfocus事件和onblur事件 153
8.1.9 onscroll事件 153
8.1.10 onDOMContentLoaded事件 153
8.2 处理鼠标事件 153
8.2.1 onmousedown事件 154
8.2.2 onmouseup事件 156
8.2.3 onmousemove事件 156
8.2.4 onmouseover事件 159
8.2.5 onmouseout事件 159
8.2.6 ondblclick事件 159
8.2.7 onclick事件 160
8.3 表单事件处理 160
8.3.1 onsubmit事件 160
8.3.2 onreset事件 161
8.3.3 onchange事件 161
8.3.4 onselect事件 161
8.3.5 onclick事件 161
8.3.6 onblur事件 161
8.3.7 onfocus事件 163
8.4 键事件处理 164
8.4.1 onkeydown事件 164
8.4.2 onkeyup事件 167
8.4.3 onkeypress事件 167
8.5 高级事件处理 167
8.5.1 addEventListener方法 167
8.5.2 removeEventListener方法 169
8.5.3 dispatchEvent方法 169
8.5.4 initEvent方法 169
8.5.5 stopPropagation方法 169
8.5.6 preventDefault方法 169
第9章 JavaScript和cookie 171
9.1 建立第一个cookie 171
9.2 读取cookie 174
9.3 显示cookie 175
9.4 使用cookie作为计数器 176
9.5 删除cookie 178
9.6 处理多个cookie 180
9.7 显示新内容提醒信息 182
第10章 对象和DOM 186
10.1 关于节点操纵 186
10.1.1 DOM 2和W3C 186
10.1.2 DOM 2术语 186
10.1.3 DOM 3 187
10.2 添加节点 187
10.3 删除节点 189
10.4 删除特定的节点 191
10.5 插入节点 194
10.6 替换节点 196
10.7 用对象字面量编写代码 199
第11章 建立动态页面 204
11.1 在网页上显示当前日期 204
11.2 处理周中的日期 206
11.3 根据时间对消息进行定制 207
11.4 根据时区显示日期 208
11.5 把24小时制转换为12小时制 211
11.6 创建倒数计数器 214
11.7 隐藏和显示层 217
11.8 移动文档中的对象 220
11.9 日期方法 221
第12章 JavaScript应用示例 223
12.1 使用可折叠菜单 223
12.2 添加下拉菜单 226
12.3 改进下拉菜单 229
12.4 带说明的幻灯片 232
12.5 一个娱乐姓名生成器 235
12.6 柱状图生成器 239
12.7 样式表切换器 246
第13章 Ajax简介 254
13.1 Ajax的定义 254
13.2 读取服务器数据 256
13.3 解析服务器数据 263
13.4 刷新服务器数据 268
13.5 从服务器获得数据 270
13.6 用Ajax预览链接 273
13.7 自动补全表单字段 276
13.8 检查文件是否存在 281
第14章 工具包、框架和库 285
14.1 添加jQuery 286
14.2 使用jQuery更新页面 288
14.3 使用jQuery交互 288
14.4 交互与更新 291
14.5 条纹表格 292
14.6 表格排序 296
第15章 用jQuery设计页面 301
15.1 突出显示新元素 301
15.2 创建可折叠菜单 303
15.3 创建更漂亮的对话框 306
15.4 自动完成字段 309
15.5 添加可排序选项卡 311
15.6 使用复选框作为按钮 313
15.7 在页面中添加日历 316
15.8 使用ThemeRoller定制外观 320
第16章 基于jQuery的应用 323
16.1 以jQuery为基础 323
16.1.1 Ajax、JSON和jQuery 323
16.1.2 jQuery插件 324
16.2 拖放元素 324
16.3 使用jQuery处理外部数据 327
16.4 使用jQuery插件 329
16.5 添加jQuery音频插件 333
第17章 为移动设备编写脚本 335
17.1 改变方向 335
17.2 处理触摸事件 342
17.3 针对不同设备编写特定代码 344
17.4 定位设备 346
第18章 bookmarklet 349
18.1 第一个bookmarklet 349
18.2 改变页面的背景颜色 353
18.3 改变页面样式 354
18.4 查询单词 355
18.5 查看图像 357
18.6 显示ISO Latin字符 359
18.7 将RGB值转换为十六进制 360
18.8 对值进行转换 362
18.9 bookmarklet计算器 362
18.10 缩短URL 364
18.11 检验页面 364
18.12 通过电子邮件发送页面 365
18.13 改变页面大小 366
附录A JavaScript的版本演化和参考资料 368
附录B JavaScript保留字 386
附录C CSS参考 389
附录D 其他学习资源 398