第1章 JavaScript概述 1
1.1 JavaScript是什么 1
1.2 JavaScript的发展历史 2
1.2.1 Netscape Navigator 2
1.2.2 Microsoft Internet Explorer 2
1.2.3 Mozilla Firefox 3
1.2.4 ECMAScript标准 3
1.3 JavaScript与Java 4
1.4 JavaScript可以做什么 4
1.5 JavaScript不能做什么 5
1.6 JavaScript与Web标准 5
1.7 JavaScript开发工具 6
1.7.1 集成开发环境(IDE) 6
1.7.2 调试JavaScript 7
小结 10
习题 10
第2章 JavaScript基础 11
2.1 JavaScript语法基础 11
2.1.1 语句 11
2.1.2 注释 12
2.1.3 直接量 12
2.1.4 变量 13
2.1.5 运算符 13
2.1.6 程序流程控制 19
2.2 JavaScript内置对象 21
2.2.1 全局(Global)对象 22
2.2.2 对象(Object)对象 22
2.2.3 字符串(String)对象 23
2.2.4 正则表达式(RegExp)对象 23
2.2.5 数组(Array)对象 24
2.2.6 数学(Math)对象 24
2.2.7 日期(Date)对象 25
2.2.8 数字(Number)对象 26
2.2.9 函数(Function)对象 27
2.2.10 布尔值(Boolean)对象 27
2.2.11 错误(Error)对象 28
小结 28
习题 28
第3章 JavaScript面向对象编程 30
3.1 JavaScript语言特性 30
3.1.1 JavaScript中的函数 30
3.1.2 apply和call方法 32
3.1.3 this关键字 32
3.1.4 使用for (...in...) 33
3.1.5 闭包 33
3.2 JavaScript面向对象编程实现 34
3.2.1 类的声明 34
3.2.2 继承 35
3.2.3 多态 36
3.3 JavaScript与设计模式 37
3.3.1 Singleton模式 37
3.3.2 Factory Method模式 38
3.3.3 Facade模式 38
小结 39
习题 39
第4章 正则表达式 41
4.1 正则表达式的起源 41
4.2 构建正则表达式 41
4.3 JavaScript中的正则表达式 42
4.3.1 定义正则表达式 42
4.3.2 String对象 43
4.3.3 RegExp和正则表达式对象 43
4.4 简单模式 44
4.4.1 元字符 44
4.4.2 特殊字符 44
4.4.3 括号表达式 45
4.4.4 预定义类 45
4.4.5 限定符 45
4.4.6 贪婪模式与非贪婪模式 46
4.5 复杂模式 46
4.5.1 选择和分组 47
4.5.2 非捕获性分组 47
4.5.3 前瞻 47
4.5.4 定位符 48
小结 49
习题 49
第5章 字符串处理 51
5.1 JavaScript字符串处理函数 51
5.1.1 访问字符串 51
5.1.2 查找字符串 52
5.1.3 比较字符串 53
5.1.4 修改字符串 53
5.1.5 正则表达式匹配与替换 55
5.2 字符串处理应用示例 58
5.2.1 计算字符串长度 58
5.2.2 字符串验证 59
5.2.3 字符串填充 60
5.2.4 字符串连接 62
5.2.5 首字母大写 63
5.2.6 屏蔽非法用词 64
5.2.7 删除HTML标签 64
小结 64
习题 64
第6章 浏览器对象模型(BOM) 67
6.1 浏览器对象 67
6.1.1 window对象 67
6.1.2 document对象 74
6.1.3 location对象 79
6.1.4 navigator对象 79
6.1.5 screen对象 80
6.1.6 history对象 81
6.2 JavaScript浏览器编程示例 81
6.2.1 控制浏览器窗口 81
6.2.2 延时生效按钮 88
6.2.3 页面间参数传递 89
6.2.4 检测浏览器及操作系统类型 94
小结 95
习题 95
第7章 DOM基础 96
7.1 DOM标准 96
7.1.1 什么是DOM 96
7.1.2 DOM标准接口 98
7.1.3 DOM标准的使用 100
7.2 使用DOM 101
7.2.1 访问指定节点 101
7.2.2 访问元素属性 104
7.2.3 访问相关节点 105
7.2.4 检查节点类型 107
7.2.5 创建节点 108
7.2.6 操作节点 113
7.3 DOM应用示例 116
7.3.1 文本框自动获得焦点 116
7.3.2 表单输入验证 117
7.3.3 双向选择列表框 120
7.3.4 关键词链接 122
7.3.5 可排序表格 125
小结 131
习题 131
第8章 事件处理模型 133
8.1 事件流 133
8.1.1 DOM事件流模型 133
8.1.2 IE事件流模型 134
8.2 事件处理函数 135
8.2.1 DOM事件处理函数 135
8.2.2 IE事件处理函数 138
8.3 事件对象 140
8.3.1 DOM事件对象 141
8.3.2 IE事件对象 148
8.4 事件处理应用示例 150
8.4.1 商品评级功能 150
8.4.2 网络相册 152
8.4.3 模拟拖放效果 156
小结 158
习题 159
第9章 JavaScript控制页面样式 160
9.1 CSS基础 160
9.1.1 选择器 161
9.1.2 层叠与特殊性 162
9.1.3 继承 163
9.1.4 CSS小结 163
9.2 样式编程基础 163
9.2.1 访问样式 163
9.2.2 访问样式表 166
9.3 样式编程示例 168
9.3.1 网页换肤 168
9.3.2 图片倒影特效 173
9.3.3 圆角边框 177
小结 184
习题 185
第10章 JavaScript中的XML编程 186
10.1 XML基础 186
10.1.1 XPath简介 187
10.1.2 XSLT简介 187
10.2 浏览器中的XML DOM 189
10.2.1 IE中的XML DOM 189
10.2.2 Mozilla中的XML DOM 194
10.3 浏览器中的XPath 196
10.3.1 IE中的XPath 197
10.3.2 Mozilla中的XPath 197
10.4 浏览器中的XSLT 200
10.4.1 IE中的XSLT 200
10.4.2 Mozilla中的XSLT 204
10.5 XML编程应用示例 205
小结 212
习题 212
第11章 JavaScript与服务器的通信 214
11.1 传统无刷新页面实现技术 214
11.1.1 隐藏框架 214
11.1.2 远程脚本 218
11.2 Ajax技术 226
11.2.1 Ajax技术原理 227
11.2.2 XMHttpRequest对象 228
11.2.3 应用示例:RSS阅读器 233
小结 240
习题 240
第12章 JavaScript与插件 241
12.1 Java applet 241
12.1.1 创建applet 241
12.1.2 使用applet 242
12.2 ActiveX控件 244
12.2.1 创建ActiveX控件 244
12.2.2 使用ActiveX控件 248
12.3 Flash 249
12.3.1 创建Flash 250
12.3.2 Flash与JavaScript的交互 252
小结 254
习题 255
参考文献 256