第1篇 入门篇 2
第1章 JavaScript入门 2
1.1 JavaScript概述 3
1.1.1 JavaScript的发展历程 3
1.1.2 JavaScript的主要特点 3
1.1.3 JavaScript的典型应用 4
1.2 JavaScript运行环境 6
1.2.1 硬件要求 6
1.2.2 软件要求 7
1.2.3 浏览器对JavaScript脚本的支持 7
1.3 JavaScript的开发工具 8
1.3.1 Macromedia Dreamweaver 8
1.3.2 Microsoft FrontPage 9
1.4 在HTML中使用JavaScript 9
1.4.1 在页面中直接嵌入JavaScript脚本 9
1.4.2 链接外部JavaScript文件 10
1.5 综合应用 11
1.6 本章小结 12
1.7 跟我上机 12
第2章 JavaScript基础 13
2.1 JavaScript基本语法 14
2.1.1 程序的执行顺序 14
2.1.2 字母大小写敏感 14
2.1.3 语句的结束标记 14
2.2 JavaScript数据结构 15
2.2.1 标识符 15
2.2.2 关键字 15
2.2.3 常量 16
2.2.4 变量 16
2.3 数据类型 18
2.3.1 数字型数据 18
2.3.2 字符串型数据 20
2.3.3 布尔型数据 21
2.3.4 特殊数据类型 22
2.3.5 数据类型的转换规则 23
2.4 运算符与表达式 24
2.4.1 算术运算符 24
2.4.2 比较运算符 25
2.4.3 赋值运算符 26
2.4.4 字符串运算符 27
2.4.5 布尔运算符 27
2.4.6 条件运算符 28
2.4.7 其他运算符 28
2.4.8 运算符优先级 29
2.4.9 表达式 31
2.5 综合应用 31
2.5.1 输出姚明个人信息 31
2.5.2 计算长方形的面积 32
2.6 本章常见错误 32
2.6.1 程序代码大小写不统一 32
2.6.2 输出字符串时未加引号 32
2.7 本章小结 32
2.8 跟我上机 33
第3章 流程控制语句 34
3.1 条件控制语句 35
3.1.1 if条件控制语句 35
3.1.2 if...else语句 36
3.1.3 if..else if语句 36
3.1.4 if语句的嵌套 39
3.1.5 switch多分支语句 41
3.2 循环控制语句 43
3.2.1 while循环语句 43
3.2.2 do...while循环语句 44
3.2.3 for循环语句 45
3.3 跳转语句 47
3.3.1 continue跳转语句 47
3.3.2 break跳转语句 48
3.4 综合应用 48
3.4.1 利用continue语句计算100以内所有偶数的和 48
3.4.2 用for语句制作一个乘法口诀表 49
3.5 本章常见错误 50
3.5.1 条件语句中缺少小括号 50
3.5.2 while语句不正确,形成死循环 50
3.6 本章小结 50
3.7 跟我上机 50
第4章 函数 52
4.1 函数的定义 53
4.2 函数的调用 53
4.2.1 函数的参数 53
4.2.2 函数的简单调用 54
4.2.3 通过链接调用函数 55
4.2.4 在响应事件中调用函数 55
4.2.5 函数的返回值 56
4.3 几种特殊的函数 57
4.3.1 构造函数与函数直接量 57
4.3.2 JavaScript的内置函数 59
4.3.3 嵌套函数 62
4.3.4 递归函数 63
4.4 综合应用 65
4.4.1 自定义一个为数字取绝对值的函数 65
4.4.2 随机生成指定位数的验证码 66
4.5 本章常见错误 67
4.5.1 使用JavaScript关键字作为变量名或函数名 67
4.5.2 自定义函数后没有调用 67
4.6 本章小结 67
4.7 跟我上机 67
第5章 字符串与数值处理对象 68
5.1 字符串对象String 69
5.1 search()方法 69
5.1.2 match()方法 69
5.1.3 split()方法 70
5.1.4 replace()方法 70
5.2 常用的数值处理对象 71
5.2.1 Math对象 71
5.2.2 Number对象 73
5.2.3 Boolean对象 78
5.2.4 Date对象 80
5.3 综合应用 83
5.3.1 将RGB格式的颜色值转换为十六进制格式 83
5.3.2 通过自定义函数实时显示系统时间 85
5.4 本章常见错误 86
5.4.1 书写Date对象的方法名不正确 86
5.4.2 使用new关键字创建Math对象 86
5.5 本章小结 86
5.6 跟我上机 86
第6章 正则表达式 88
6.1 正则表达式概述 89
6.1.1 为什么要使用正则表达式 89
6.1.2 正则表达式基本结构 89
6.2 正则表达式的语法规则 89
6.2.1 模式匹配符 90
6.2.2 定位符与原义字符 91
6.2.3 限定符与选择匹配符 94
6.2.4 特殊字符与字符匹配符 95
6.2.5 分组组合与反向引用符 98
6.2.6 整合常用的正则表达式 99
6.3 RegExp对象 101
6.3.1 创建RegExp对象 101
6.3.2 RegExp对象的属性 103
6.3.3 RegExp对象的方法 104
6.4 综合应用 108
6.4.1 验证输入是否为汉字 108
6.4.2 验证身份证号码 109
6.5 本章常见错误 111
6.5.1 匹配特殊字符时未使用转义字符“\” 111
6.5.2 显式构造函数中的表达式未加引号 111
6.6 本章小结 111
6.7 跟我上机 111
第7章 数组 113
7.1 数组对象Array 114
7.1.1 Array对象概述 114
7.1.2 数组元素的输入输出 116
7.2 常用的数组操作方法 118
7.2.1 数组的添加和删除 118
7.2.2 数组的排序 120
7.2.3 获取数组中的某段数组元素 122
7.2.4 将数组转换成字符串 122
7.3 综合应用 124
7.3.1 使用数组显示星期 124
7.3.2 使用数组存储商品信息 125
7.4 本章常见错误 125
7.4.1 数组对象名和已存在的变量重名 125
7.4.2 获取数组长度写成arrayObj.length() 126
7.5 本章小结 126
7.6 跟我上机 126
第8章 程序调试与错误处理 127
8.1 IE浏览器内置的错误报告 128
8.2 处理异常 128
8.2.1 常见的3种异常类型 129
8.2.2 onerror事件处理异常 129
8.2.3 try...catch语句处理异常 131
8.3 JavaScript语言调试 134
8.3.1 使用write()方法进行调试 134
8.3.2 使用alert语句进行调试 135
8.3.3 使用抛出自定义异常进行调试 135
8.4 综合应用 136
8.4.1 使用提示对话框显示异常信息 136
8.4.2 判断参数个数和除数是否为0 137
8.5 本章常见错误 138
8.5.1 根据浏览器中的错误提示断定错误 138
8.5.2 try...catch使用大写 138
8.6 本章小结 138
8.7 跟我上机 138
第2篇 提高篇 140
第9章 Document对象 140
9.1 文档对象概述 141
9.2 文档对象的常用属性、方法与事件 141
9.2.1 Document对象的常用属性 141
9.2.2 Document对象的常用方法 142
9.2.3 Document对象的常用事件 142
9.3 Document对象的应用 143
9.3.1 链接文字颜色设置 143
9.3.2 文档背景色和前景色设置 145
9.3.3 查看文档创建时间、修改时间和文档大小 146
9.3.4 获取对象的当前状态 147
9.3.5 获取并设置URL 148
9.3.6 在文档中输出数据 148
9.3.7 动态添加一个HTML标记 149
9.3.8 获取文本框并修改其内容 150
9.4 综合应用 151
9.4.1 动态设置网页的标题栏 151
9.4.2 打开新窗口并输出内容 152
9.5 本章常见错误 153
9.5.1 Document对象的属性和方法忽略大小写 153
9.5.2 document.getElementById(...)为空或不是对象 153
9.6 本章小结 154
9.7 跟我上机 154
第10章 Window对象 155
10.1 Window对象概述 156
10.1.1 Window对象的属性 156
10.1.2 Window对象的方法 156
10.1.3 Window对象的使用 157
10.2 对话框 158
10.2.1 警告对话框 158
10.2.2 确认对话框 159
10.2.3 提示对话框 160
10.3 打开与关闭窗口 161
10.3.1 打开窗口 161
10.3.2 关闭窗口 164
10.4 控制窗口 166
10.4.1 移动窗口 166
10.4.2 窗口滚动 169
10.4.3 改变窗口大小 170
10.4.4 控制窗口状态栏 171
10.4.5 访问窗口历史 174
10.4.6 设置超时 174
10.5 窗口事件 175
10.5.1 通用窗口事件 175
10.5.2 扩展窗口事件 175
10.6 IE浏览器窗口扩展 176
10.6.1 模式窗口 176
10.6.2 无模式窗口 176
10.6.3 弹出窗口 177
10.7 综合应用 178
10.7.1 根据用户分辨率自动调整窗口 178
10.7.2 网页拾色器 178
10.8 本章常见错误 180
10.8.1 在使用Window方法时未写小括号 180
10.8.2 clearTimeout(timerId)中的timerId加了引号 180
10.9 本章小结 181
10.10 跟我上机 181
第11章 JavaScript事件处理 182
11.1 事件与事件处理概述 183
11.1.1 事件与事件名称 183
11.1.2 JavaScript的常用事件 183
11.1.3 事件的调用 185
11.2 DOM事件模型 186
11.2.1 事件流 186
11.2.2 主流浏览器的事件模型 186
11.2.3 事件对象 187
11.2.4 注册与移除事件监听器 188
11.3 表单相关事件 190
11.3.1 获得焦点与失去焦点事件 190
11.3.2 失去焦点内容改变事件 191
11.3.3 表单提交与重置事件 192
11.4 鼠标键盘事件 195
11.4.1 鼠标单击事件 195
11.4.2 鼠标按下和松开事件 196
11.4.3 鼠标移入移出事件 197
11.4.4 鼠标移动事件 197
11.4.5 键盘事件 198
11.5 页面事件 200
11.5.1 加载与卸载事件 200
11.5.2 页面大小事件 201
11.6 滚动字幕事件 202
11.6.1 onbounce事件 202
11.6.2 onstart事件 204
11.7 文本编辑事件 205
11.8 综合应用 208
11.8.1 屏蔽键盘相关事件 208
11.8.2 限制文本框的输入 210
11.9 本章常见错误 211
11.9.1 onsubmit调用自定义函数时未加return语句 211
11.9.2 JavaScript中的事件名称忽略了大小写 211
11.10 本章小结 211
11.11 跟我上机 212
第12章 表单的应用 214
12.1 表单概述 215
12.2 表单标记及其属性 215
12.2.1 name属性 216
12.2.2 action属性 216
12.2.3 method属性 216
12.2.4 enctype属性 217
12.2.5 target属性 217
12.3 输入标记<input> 217
12.3.1 文字域text 218
12.3.2 密码域password 219
12.3.3 单选按钮radio 220
12.3.4 复选框checkbox 221
12.3.5 普通按钮button 221
12.3.6 提交按钮submit 222
12.3.7 重置按钮reset 222
12.3.8 图像域image 223
12.3.9 隐藏域hidden 224
12.3.10 文件域file 224
12.4 文本域标记<textarea> 225
12.5 菜单和列表标记<select>、<option> 226
12.6 在Dreamweaver中快速创建表单 227
12.7 JavaScript访问表单及表单元素 229
12.7.1 JavaScript访问表单 229
12.7.2 JavaScript访问表单元素 230
12.8 表单的验证 230
12.9 综合应用 233
12.9.1 让密码域更安全 233
12.9.2 制作个人信息页面 234
12.10 本章常见错误 236
12.10.1 上传文件表单没有设置enctype属性 236
12.10.2 表单中的列表不能实现多选 236
12.11 本章小结 236
12.12 跟我上机 236
第13章 JavaScript操作XML和DOM 239
13.1 XML编程 240
13.1.1 XML概述 240
13.1.2 创建XML文件 240
13.1.3 加载XML文件 241
13.1.4 读取XML 244
13.2 DOM编程 248
13.2.1 DOM概述 248
13.2.2 DOM对象节点属性 251
13.2.3 操作节点 255
13.2.4 获取文档中的指定元素 262
13.2.5 与DHTML相对应的DOM 264
13.3 DOM与XML编程 266
13.4 综合应用 267
13.4.1 通过JavaScript操作XML实现分页 267
13.4.2 通过操作XML数据岛实现添加、删除留言信息 269
13.5 本章常见错误 272
13.5.1 getElementById()方法无法获取指定元素 272
13.5.2 getElementsByName()方法无法获取元素 273
13.6 本章小结 273
13.7 跟我上机 273
第14章 Cookie应用 275
14.1 Cookie基础 276
14.1.1 Cookie概述 276
14.1.2 Cookie的传递流程 278
14.1.3 Cookie的常用属性 278
14.2 JavaScript中的Cookie应用 279
14.2.1 Cookie的设置 279
14.2.2 Cookie的写入和读取 281
14.2.3 删除Cookie 288
14.3 Cookie的安全问题 289
14.4 综合应用 290
14.4.1 页面重定向中使用Cookie 290
14.4.2 弹出的窗口之Cookie控制 291
14.5 本章常见错误 293
14.5.1 expires属性用encodeURI()进行编码 293
14.5.2 浏览器重新打开后获取不到Cookie值 293
14.6 本章小结 293
14.7 跟我上机 293
第15章 图像处理 295
15.1 Image对象 296
15.2 JavaScript中的图像应用 296
15.2.1 图像的预装载 296
15.2.2 图片的随机显示 298
15.2.3 浮动广告 300
15.2.4 图片验证码 302
15.2.5 图片置顶 302
15.2.6 进度条 304
15.2.7 图片时钟 305
15.3 特殊的图像效果 306
15.3.1 图片渐变 306
15.3.2 图片翻转 307
15.3.3 图片闪烁 311
15.4 综合应用 312
15.4.1 图片水波倒影 312
15.4.2 图片无间断滚动 313
15.5 本章常见错误 314
15.5.1 图像文件路径不正确 314
15.5.2 document.images[]获取图像不正确 314
15.6 本章小结 314
15.7 跟我上机 315
第16章 文件处理和页面打印 316
16.1 文件处理对象 317
16.1.1 FileSystemObject对象 317
16.1.2 Drive对象 322
16.1.3 File对象 326
16.1.4 Folder对象 337
16.2 页面打印 338
16.2.1 使用execWB方法进行打印 338
16.2.2 打印页面局部内容 341
16.2.3 设置页眉页脚 342
16.2.4 分页打印 344
16.3 综合应用 346
16.3.1 表格导出到Word并打印 346
16.3.2 将Web页面中的数据导出到Excel 348
16.4 本章常见错误 349
16.4.1 GetFile()方法指定的文件不存在 349
16.4.2 Delete()方法删除的文件不存在 349
16.5 本章小结 350
16.6 跟我上机 350
第17章 嵌入式插件 351
17.1 嵌入对象标记<object> 352
17.2 MIME类型 353
17.3 ActiveX控件 354
17.3.1 创建ActiveX 354
17.3.2 嵌入ActiveX 354
17.3.3 JavaScript与ActiveX交互 355
17.4 Java applet对象 356
17.4.1 创建Java applet 356
17.4.2 嵌入Java applet 356
17.4.3 在IE中执行Java applet 357
17.4.4 JavaScript与Java applet交互 358
17.5 使用Flash动画 359
17.5.1 嵌入Flash动画 359
17.5.2 使用JavaScript控制Flash 361
17.6 综合应用 363
17.6.1 为网页设置背景音乐 363
17.6.2 插入背景透明的Flash动画 364
17.7 本章常见错误 365
17.7.1 无法向注册表中注册ActiveX控件 365
17.7.2 使用<object>标记嵌入Flash未指定MIME类型 365
17.8 本章小结 365
17.9 跟我上机 365
第18章 AJAX技术 366
18.1 AJAX概述 367
18.1.1 什么是AJAX 367
18.1.2 AJAX应用案例 367
18.1.3 AJAX的开发模式 369
18.1.4 AJAX的优点 370
18.2 AJAX的技术组成 370
18.2.1 XMLHttpRequest对象 370
18.2.2 XML语言 371
18.2.3 JavaScript脚本语言 373
18.2.4 DOM 373
18.2.5 CSS 373
18.3 XMLHttpRequest对象 374
18.3.1 XMLHttpRequest对象的初始化 374
18.3.2 XMLHttpRequest对象的常用属性 375
18.3.3 XMLHttpRequest对象的常用方法 377
18.4 AJAX的重构 379
18.5 AJAX开发注意事项 381
18.5.1 浏览器兼容性问题 381
18.5.2 安全问题 381
18.5.3 性能问题 382
18.5.4 解决中文乱码问题 382
18.6 综合应用 383
18.6.1 应用AJAX技术检测用户名 383
18.6.2 应用AJAX技术删除数据 385
18.7 本章常见错误 388
18.7.1 在应用AJAX过程中出现乱码 388
18.7.2 不能及时获取最新数据 388
18.8 本章小结 388
18.9 跟我上机 389
第19章 JQuery脚本库 391
19.1 JOuery概述 392
19.1.1 JQuery主要特点 392
19.1.2 JQuery案例展示 393
19.2 JQuery下载与配置 394
19.2.1 JQuery下载 394
19.2.2 JQuery配置 395
19.3 JQuery的插件 396
19.3.1 插件的使用 396
19.3.2 流行的插件 396
19.4 JQuery选择器 398
19.4.1 JQuery的工厂函数 399
19.4.2 基本选择器 399
19.4.3 层级选择器 405
19.4.4 过滤选择器 412
19.4.5 属性选择器 419
19.4.6 表单选择器 420
19.5 JQuery操作元素 421
19.5.1 操作元素内容和值 421
19.5.2 操作DOM节点 425
19.5.3 操作元素属性 428
19.5.4 操作元素的CSS样式 429
19.6 JQuery的事件处理 430
19.6.1 页面加载响应事件 430
19.6.2 JQuery中的事件 431
19.6.3 事件绑定 432
19.6.4 模拟用户操作事件 433
19.6.5 事件捕获与事件冒泡 435
19.7 JQuery动画 438
19.7.1 元素的隐藏和显示 438
19.7.2 元素的淡入淡出 442
19.7.3 元素的滑动效果 443
19.7.4 自定义动画效果 445
19.8 综合应用 449
19.8.1 表格隔行换色 449
19.8.2 打造自己的开心农场 451
19.9 本章常见错误 453
19.9.1 两个元素的id属性值相同 453
19.9.2 使用animate()方法时未设置position定位属性 453
19.10 本章小结 453
19.11 跟我上机 453
第3篇 实战篇 458
第20章 JavaScript+AJAX+JQuery开发企业门户网站 458
20.1 系统分析 459
20.2 系统设计 459
20.2.1 系统目标 459
20.2.2 系统功能结构 459
20.3 网页预览 460
20.4 关键技术 462
20.4.1 JavaScript脚本技术 463
20.4.2 AJAX无刷新技术 465
20.4.3 JQuery技术 470
20.5 JavaScript实现导航菜单 471
20.6 JQuery实现图片展示 473
20.7 AJAX实现最新消息页面 476
20.8 JavaScript实现产品推荐页面 478
20.9 JavaScript实现浮动窗口 480
20.10 本章小结 482