第一部分 Web脚本编写与JavaScript语言的概念
第1章 了解JavaScript
1.1 学习Web脚本编写基础
1.1.1 脚本和程序
1.1.2 JavaScript简介
1.2 在网页中如何嵌入JavaScript
1.2.1 JavaScript和HTML
1.2.2 使用单独的JavaScript文件
1.2.3 事件
1.3 浏览器和JavaScript
1.3.1 文档对象模型(DOM)
1.3.2 Internet Explorer
1.3.3 Netscape和Firefox
1.3.4 其他浏览器
1.3.5 JavaScript的版本
1.4 指定JavaScript的版本
1.5 JavaScript在浏览器之外的应用
1.6 JavaScript功能一览
1.6.1 改善导航功能
1.6.2 验证表单
1.6.3 特殊效果
1.6.4 AJAX
1.7 JavaScript的替代技术
1.7.1 Java
1.7.2 ActiveX
1.7.3 VBScript
1.7.4 CGI和服务器端脚本技术
1.8 小结
1.9 问题与解答
1.10 测试题
1.11 测试题答案
1.12 练习题
第2章 创建简单的脚本
2.1 脚本编写的工具
2.1.1 文本编辑器
2.1.2 浏览器
2.2 在JavaScript中显示时间
2.3 开始编写脚本
2.4 添加JavaScript语句
2.4.1 在变量中存储数据
2.4.2 计算结果
2.5 创建输出
2.6 在网页中添加脚本
2.7 测试脚本
2.7.1 修改脚本
2.7.2 处理JavaScript中的错误
2.8 实践练习:使用一个单独的JavaScript文件
2.9 小结
2.10 问题与解答
2.11 测试题
2.12 测试题答案
2.13 练习题
第3章 开始JavaScript编程
3.1 基本概念
3.1.1 语句
3.1.2 用函数来组合任务
3.1.3 变量
3.1.4 理解对象
3.1.5 条件语句
3.1.6 循环语句
3.1.7 事件处理程序
3.1.8 最先运行哪个脚本
3.2 JavaScript语法规则
3.2.1 区分大小写
3.2.2 变量、对象和函数的名称
3.2.3 保留字
3.2.4 空格
3.3 使用注释
3.4 编写JavaScript的好习惯
3.5 实践练习:使用事件处理程序
3.6 小结
3.7 问题与解答
3.8 测试题
3.9 测试题答案
3.10 练习题
第4章 使用文档对象模型(DOM)
4.1 认识文档对象模型
4.1.1 DOM的历史
4.1.2 DOM的分级标准
4.2 使用window对象
4.3 处理Web文档
4.3.1 获得文档的信息
4.3.2 在文档中写入文字
4.3.3 使用link和anchor对象
4.4 访问浏览器的history对象
4.5 使用location对象
4.6 实践练习:创建“后退”和“前进”按钮
4.7 小结
4.8 问题与解答
4.9 测试题
4.10 测试题答案
4.11 练习题
第二部分 学习JavaScript基础
第5章 使用变量、字符串和数组
5.1 使用变量
5.1.1 选择变量名称
5.1.2 使用局部变量和全局变量
5.1.3 给变量赋值
5.2 理解表达式和运算符
5.2.1 使用JavaScript运算符
5.2.2 运算符的优先级
5.3 JavaScript的数据类型
5.4 数据类型之间的转换
5.5 使用String对象
5.5.1 创建String对象
5.5.2 给变量赋值
5.5.3 计算字符串长度
5.5.4 字符串大小写转换
5.6 使用子字符串
5.6.1 使用字符串的一部分
5.6.2 获取单个字符
5.6.3 查找子字符串
5.7 使用数值数组
5.7.1 创建数值数组
5.7.2 理解数组的长度
5.7.3 存取数组元素
5.8 使用字符串数组
5.8.1 建立字符串数组
5.8.2 分离字符串
5.8.3 字符串数组的排序
5.9 数值数组的排序
5.10 实践练习:排序并显示名字
5.11 小结
5.12 问题与解答
5.13 测试题
5.14 测试题答案
5.15 练习题
第6章 使用函数和对象
6.1 使用函数
6.1.1 定义函数
6.1.2 调用函数
6.1.3 返回值
6.2 对象简介
6.2.1 创建对象
6.2.2 对象属性和值
6.2.3 了解方法
6.3 使用对象来简化脚本
6.3.1 定义对象
6.3.2 定义对象的方法
6.3.3 创建对象实例
6.4 扩展内置对象
6.5 实践练习:使用对象保存数据
6.6 小结
6.7 问题与解答
6.8 测试题
6.9 测试题答案
6.10 练习题
第7章 用条件和循环控制流程
7.1 if语句
7.1.1 条件运算符
7.1.2 条件与逻辑运算符
7.1.3 关键字else
7.2 使用简写的条件表达式
7.2.1 用if和else测试多种条件
7.2.2 使用带switch的多个条件
7.2.3 使用for循环
7.2.4 使用while循环
7.2.5 使用do…while循环
7.3 使用循环
7.3.1 创建无穷循环
7.3.2 退出循环
7.3.3 继续循环
7.4 循环遍历对象属性
7.5 实践练习:处理数组和循环
7.6 小结
7.7 问题与解答
7.8 测试题
7.9 测试题答案
7.10 练习题
第8章 使用内置函数和程序库
8.1 使用Math对象
8.1.1 舍入和截取
8.1.2 生成随机数
8.1.3 其他Math函数
8.2 使用Math函数
8.3 使用with关键字
8.4 使用日期
8.4.1 创建Date对象
8.4.2 设置Date的值
8.4.3 读取Date的值
8.4.4 使用时区
8.4.5 日期格式的转换
8.5 使用第三方程序库
8.5.1 Prototype
8.5.2 Script.aculo.us
8.5.3 AJAX框架
8.6 其他程序库
8.7 实践练习:用程序库增添效果
8.7.1 下载程序库
8.7.2 包含文件
8.7.3 使用效果
8.7.4 构建脚本
8.8 小结
8.9 问题与解答
8.10 测试题
8.11 测试题答案
8.12 练习题
第三部分 深入学习DOM
第9章 事件响应
9.1 认识事件处理程序
9.1.1 对象与事件
9.1.2 创建事件处理程序
9.1.3 使用JavaScript定义事件处理程序
9.1.4 支持多个事件处理程序
9.1.5 使用event对象
9.1.6 Internet Explorer的event属性
9.1.7 Netscape和Firefox的event属性
9.2 使用鼠标事件
9.2.1 移至和移开
9.2.2 使用onMouseMove事件
9.2.3 常态和按下(以及单击)
9.3 使用键盘事件
9.4 使用onLoad和onUnload事件
9.5 实践练习:为网页添加链接说明
9.6 小结
9.7 问题与解答
9.8 测试题
9.9 测试题答案
9.10 练习题
第10章 使用窗口和框架
10.1 用对象控制窗口
10.1.1 window对象的属性
10.1.2 创建新窗口
10.1.3 打开和关闭窗口
10.2 移动和调整窗口大小
10.3 使用超时功能
10.4 显示对话框
10.5 使用框架
10.5.1 为框架使用JavaScript对象
10.5.2 frames数组
10.6 实践练习:在JavaScript中使用框架
10.7 小结
10.8 问题与解答
10.9 测试题
10.10 测试题答案
10.11 练习题
第11章 利用表单获取数据
11.1 HTML表单基础
11.2 在JavaScript中使用form对象
11.2.1 form对象的属性
11.2.2 提交和重置表单
11.2.3 检测表单事件
11.3 编制表单元素的脚本
11.3.1 文本字段
11.3.2 文本区域
11.3.3 处理表单中的文本
11.3.4 按钮
11.3.5 复选框
11.3.6 单选按钮
11.3.7 下拉列表
11.4 显示表单数据
11.5 通过邮件发送表单结果
11.6 实践练习:验证表单
11.7 小结
11.8 问题与解答
11.9 测试题
11.10 测试题答案
11.11 练习题
第12章 使用样式表
12.1 样式与内容
12.2 定义和使用CSS样式
12.2.1 创建规则
12.2.2 设置指定元素的样式
12.2.3 使用id属性
12.2.4 使用类
12.3 使用CSS属性
12.3.1 文本对齐
12.3.2 改变颜色和背景图像
12.3.3 使用字体
12.3.4 边距和边框
12.3.5 样式表的单位
12.4 创建一个简单的样式表
12.5 使用外部样式表
12.5.1 链接外部样式表
12.5.2 创建外部.css文件
12.6 用JavaScript控制样式
12.7 实践练习:创建动态样式
12.8 小结
12.9 问题与解答
12.10 测试题
12.11 测试题答案
12.12 练习题
第13章 使用W3C的DOM
13.1 DOM和动态HTML
13.2 理解DOM结构
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 用JavaScript控制定位
13.4 实践练习:创建可移动的层
13.5 小结
13.6 问题与解答
13.7 测试题
13.8 测试题答案
13.9 练习题
第14章 使用高级DOM功能
14.1 使用DOM节点
14.1.1 基本节点属性
14.1.2 节点关系属性
14.1.3 文档方法
14.1.4 节点的方法
14.2 隐藏和显示对象
14.3 在页面中修改文本
14.4 为页面添加文本
14.5 实践练习:创建导航树
14.6 小结
14.7 问题与解答
14.8 测试题
14.9 测试题答案
14.10 练习题
第四部分 使用JavaScript的高级功能
第15章 编写规范型脚本
15.1 编写脚本的最佳方法
15.1.1 内容、展现和行为
15.1.2 渐进式提高
15.1.3 添加事件处理程序
15.1.4 Web标准:浏览器无关性
15.1.5 为代码编写文档
15.1.6 可用性
15.1.7 设计模型
15.1.8 可访问性
15.2 读取浏览器的信息
15.2.1 显示浏览器的信息
15.2.2 处理特殊的浏览器
15.3 编写跨浏览器的脚本
15.3.1 功能检测技术
15.3.2 处理浏览器异常
15.4 为不支持JavaScript的浏览器提供支持
15.4.1 使用noscript标记
15.4.2 保持JavaScript的功能可选
15.4.3 避免错误
15.5 实践练习:创建规范型脚本
15.6 小结
15.7 问题与解答
15.8 测试题
15.9 测试题答案
15.10 练习题
第16章 调试JavaScript应用程序
16.1 防止Bug
16.1.1 养成良好的编程习惯
16.1.2 常见错误的预防
16.2 基本调试工具
16.2.1 Firefox的JavaScript控制台
16.2.2 在Internet Explorer中显示错误信息
16.2.3 警告信息
16.2.4 使用注释功能
16.2.5 其他调试工具
16.3 创建错误处理程序
16.3.1 使用onerror属性
16.3.2 显示错误信息
16.3.3 使用try和catch
16.4 高级调试工具
16.4.1 Web Developer工具栏(用于Firefox)
16.4.2 Developer工具栏(适用于Internet Explorer)
16.4.3 DOM Inspector(用于Firefox)
16.4.4 查看生成的源代码
16.4.5 JavaScript Shell
16.5 实践练习:调试脚本
16.5.1 测试脚本
16.5.2 解决问题
16.5.3 重新测试
16.6 小结
16.7 问题与解答
16.8 测试题
16.9 测试题答案
16.10 练习题
第17章 AJAX:远程脚本技术
17.1 AJAX简介
17.1.1 JavaScript客户端(前端)
17.1.2 后台
17.1.3 XML
17.1.4 AJAX的典型应用
17.1.5 框架和库
17.1.6 AJAX的局限性
17.2 使用XMLHttpRequest
17.2.1 创建请求
17.2.2 打开URL
17.2.3 发送请求
17.2.4 等待响应
17.2.5 解释响应数据
17.3 创建简单的AJAX库
17.3.1 ajaxRequest()函数
17.3.2 ajaxResponse()函数
17.3.3 使用AJAX库
17.4 使用AJAX库编写AJAX测验程序
17.4.1 HTML文件
17.4.2 XML文件
17.4.3 JavaScript文件
17.4.4 测试示例
17.5 调试AJAX应用程序
17.6 实践练习:制作一个实时查询表单
17.6.1 HTML表单
17.6.2 PHP后台
17.6.3 JavaScript前端
17.6.4 执行程序
17.7 小结
17.8 问题与解答
17.9 测试题
17.10 测试题答案
17.11 练习题
第18章 Greasemonkey:使用JavaScript增强页面功能
18.1 Greasemonkey插件简介
18.1.1 在Firefox中安装Greasemonkey插件
18.1.2 Internet Explorer的Turnabout插件
18.1.3 其他浏览器
18.1.4 用户脚本的安全性
18.2 使用用户脚本
18.2.1 查找脚本
18.2.2 安装脚本
18.2.3 管理脚本
18.2.4 测试用户脚本
18.2.5 激活或禁用Greasemonkey或Turnabout
18.3 创建自己的用户脚本
18.3.1 创建一个简单的用户脚本
18.3.2 描述用户脚本
18.3.3 测试脚本
18.3.4 Greasemonkey API函数
18.3.5 创建专用站点脚本
18.3.6 调试用户脚本
18.4 实践练习:创建用户脚本
18.4.1 运行过程
18.4.2 使用脚本
18.5 小结
18.6 问题与解答
18.7 测试题
18.8 测试题答案
18.9 练习题
第五部分 使用JavaScript创建多媒体应用程序
第19章 使用图像和动画
19.1 使用动态图像
19.1.1 使用image对象
19.1.2 预加载图像
19.2 创建Rollover(鼠标翻转)效果
19.2.1 通过JavaScript创建Rollover效果
19.2.2 使用CSS而不是JavaScript实现Rollover效果
19.2.3 使用CSS技术创建图形化的rollover效果
19.3 制作简单的JavaScript幻灯效果
19.3.1 HTML文件
19.3.2 JavaScript文件
19.4 实践练习:向幻灯中添加动画效果
19.4.1 HTML文件
19.4.2 CSS文件
19.4.3 JavaScript脚本
19.4.4 整合所有技术
19.5 小结
19.6 问题与解答
19.7 测试题
19.8 测试题答案
19.9 练习题
第20章 使用声音和插件
20.1 插件介绍
20.1.1 embed和object标签
20.1.2 理解MIME类型
20.1.3 在JavaScript中使用插件
20.1.4 插件功能检测
20.2 JavaScript和Flash
20.2.1 ActionScript
20.2.2 JavaScript与Flash之间的交互
20.2.3 在JavaScript中嵌入Flash
20.3 使用JavaScript处理音频
20.3.1 音频格式
20.3.2 音频插件
20.3.3 嵌入音频
20.3.4 使用JavaScript控制音频
20.3.5 检测当前浏览支持的音频功能
20.3.6 使用Flash
20.4 使用JavaScript测试音频
20.5 实践练习:使用鼠标播放音乐
20.5.1 示例的HTML文档
20.5.2 CSS样式单
20.5.3 播放音频
20.5.4 嵌入音频
20.5.5 整合所有技术
20.6 小结
20.7 问题与解答
20.8 测试题
20.9 测试题答案
20.10 练习题
第六部分 创建复杂脚本
第21章 创建JavaScript下拉菜单
21.1 设计下拉菜单
21.1.1 创建HTML标记
21.1.2 使用CSS设计菜单布局
21.2 使用脚本来设置下拉菜单的行为
21.2.1 设置菜单
21.2.2 显示子菜单
21.2.3 隐藏子菜单
21.2.4 完成脚本
21.3 实践练习:利用CSS增强菜单
21.4 小结
21.5 问题与解答
21.6 测试题
21.7 测试题答案
21.8 练习题
第22章 创建JavaScript游戏
22.1 游戏简介
22.1.1 游戏玩法
22.1.2 得分计算
22.1.3 创建图形
22.2 创建HTML文档
22.3 创建脚本
22.3.1 使用对象存储纸牌
22.3.2 构建游戏板
22.3.3 洗牌
22.3.4 将牌放到游戏板上
23.3.5 计算行、列和对角线得分
23.3.6 合计得分
23.3.7 结束游戏
22.4 利用CSS添加样式
22.5 实践练习:组合应用技术
22.6 小结
22.7 问题与解答
22.8 测试题
22.9 测试题答案
22.10 练习题
第23章 创建JavaScript应用程序
23.1 创建滚动窗口
23.1.1 HTML文档
23.1.2 CSS文件
23.1.3 JavaScript文件
23.2 利用JavaScript在CSS样式表之间切换
23.2.1 创建HTML文档
23.2.2 创建第一张样式表
23.2.3 创建第二张样式表
23.2.4 创建脚本
23.3 实践练习:创建动态表单
23.3.1 创建HTML文档
23.3.2 添加脚本
23.4 小结
23.5 问题与解答
23.6 测试题
23.7 测试题答案
23.8 练习题
第24章 JavaScript的未来
24.1 学习JavaScript高级技巧
24.2 未来的Web技术
24.2.1 JavaScript的未来版本
24.2.2 DOM的未来版本
24.2.3 XML(可扩展标记语言)
24.2.4 XHTML(可扩展超文本标记语言)
24.2.5 XSL(可扩展样式表语言)
24.3 为未来做好准备
24.3.1 保持脚本兼容性
24.3.2 保持HTML兼容
24.3.3 详细编制文档
24.4 继续学习其他语言
24.5 实践练习:创建拖放式对象
24.5.1 HTML文档
24.5.2 CSS样式表
24.5.3 实现拖放
24.5.4 JavaScript文件
24.6 小结
24.7 问题与解答
24.8 测试题
24.9 测试题答案
24.10 练习题
第七部分 附录
附录A 其他JavaScript资源
A.1 JavaScript网站
A.2 Web开发站点
附录B JavaScript开发人员工具
B.1 HTML和文本编辑器
B.1.1 HomeSite
B.1.2 TopStyle
B.1.3 FrontPage
B.1.4 BBEdit
B.1.5 文本编辑器
B.2 HTML验证工具
B.3 调试工具
附录C 术语表
附录D JavaScript快速参考
D.1 内置对象
D.1.1 数组
D.1.2 字符串
D.1.3 Math
D.1.4 Date
D.2 创建和自定义对象
D.2.1 创建对象
D.2.2 自定义对象
D.3 JavaScript语句
D.3.1 注释
D.3.2 break
D.3.3 continue
D.3.4 for
D.3.5 for...in
D.3.6 function
D.3.7 if...else
D.3.8 return
D.3.9 var
D.3.10 while
D.4 JavaScript内置函数
D.4.1 eval
D.4.2 parseInt
D.4.3 parseFloat
附录E DOM快速参考
E.1 DOM Level
E.1.1 window
E.1.2 location
E.1.3 history
E.1.4 document
E.1.5 navigator
E.2 DOM Level 1
E.2.1 基本的节点属性
E.2.2 关系属性
E.2.3 偏置属性
E.2.4 样式属性
E.2.5 节点方法
E.2.6 文档对象方法和属性
· · · · · · (
收起)