第一部分 JavaScript初探 1
第1章 进入JavaScript的世界 3
1.1 JavaScript无处不在 4
1.2 为什么要学习JavaScript 4
1.3 JavaScript的发展史 5
1.4 今天的JavaScript 6
1.5 JavaScript的未来 7
1.6 脚本和程序之间的区别 7
1.7 脚本编写语言与程序设计语言之间的区别 8
1.8 JavaScript使用者的工具 8
1.8.1 纯文本编辑器 8
1.8.2 使用可视化工具 9
1.9 拥有最新的浏览器 10
1.10 其他工具 11
1.10.1 创建一个HTML模板 11
1.10.2 拥有一个脚本库 13
第二部分 深入了解JavaScript 15
第2章 将JavaScript和HTML结合起来 17
2.1 HTML和JavaScript——强强携手 18
2.1.1 HTML主干 18
2.1.2 <script>块 19
2.1.3 关于language属性的其他事项 21
2.2 对较老的浏览器隐藏JavaScript 21
第3章 运行中的JavaScript 25
3.1 探讨JavaScript的输入和输出 26
3.2 对象、方法和属性 28
3.2.1 对象 28
3.2.2 方法 28
3.2.3 属性 28
3.3 使用alert()方法 29
3.4 为JavaScript添加注释 31
3.4.1 单行注释 32
3.4.2 多行注释 32
3.5 使用confirm()方法 33
3.6 使用prompt()方法 35
第4章 用变量处理数据 39
4.1 JavaScript中的值 40
4.1.1 字符串 40
4.1.2 数字 40
4.1.3 关于数字 41
4.1.4 最大的数字和最小的数字 42
4.1.5 布尔值 42
4.1.6 特殊数据类型:数字、空值和未定义值 42
4.2 JavaScript中的变量 43
4.2.1 创建变量 43
4.2.2 创建多个变量 46
4.2.3 显示变量的内容 48
4.3 错误排除 50
4.3.1 例1 50
4.3.2 例2 51
4.3.3 例3 51
4.4 使用prompt()方法为变量赋值 52
第5章 JavaScript数组和转义字符 59
5.1 使用数组 60
5.2 快速创建一个数组 64
5.3 数组的长度 65
5.4 显示所有元素 66
5.5 练习——编写交互式故事 67
5.6 转义字符 72
第6章 表达式、条件、操作符、字符串和数字 75
6.1 表达式和条件 76
6.2 操作符简介 77
6.2.1 算术操作符 77
6.2.2 关系操作符 80
6.2.3 逻辑操作符 80
6.2.4 一元操作符 81
6.2.5 赋值操作符 84
6.2.6 其他操作符 86
6.2.7 再谈字符串与数字 90
第7章 在JavaScript中使用语句 95
7.1 什么是语句 96
7.2 variable语句 97
7.3 If语句 97
7.4 循环语句 101
7.4.1 do...while语句 101
7.4.2 while语句 103
7.4.3 for语句 104
7.4.4 for...in语句 106
7.5 continue语句 107
7.6 break语句 110
7.7 switch语句 111
第8章 使用函数和事件编写更好的JavaScript脚本 115
8.1 什么是函数 116
8.2 你的第一个函数 116
8.3 事件 118
8.3.1 onLoad事件 118
8.3.2 onClick事件 119
8.3.3 onMouseover事件 119
8.3.4 onMouseout事件 119
8.4 使用事件 119
8.4.1 使用onLoad事件 119
8.4.2 使用onClick事件 120
8.4.3 使用onMouseover事件 121
8.5 创建有效的函数 123
8.6 调用函数的函数 124
8.7 圆括号的用途 128
8.8 在函数之间使用参数 131
8.9 return语句 132
8.10 练习——进行温度换算的JavaScript 134
第9章 最大程度地利用对象 137
9.1 什么是对象 138
9.2 对象和浏览器 138
9.3 JavaScript对象初探 139
9.4 Math对象 139
9.4.1 PI属性 139
9.4.2 使用max和min方法 141
9.4.3 使用round方法 142
9.4.4 使用random方法 145
9.5 Date对象 146
9.5.1 使用getFullYear方法 147
9.5.2 使用getMonth方法 147
9.5.3 使用getDay方法 150
9.5.4 小时、分钟、秒和毫秒 150
9.6 String对象 151
9.6.1 toUpperCase方法和toLowerCase方法 151
9.6.2 substring方法 152
9.7 with语句 153
9.8 对象的方法和属性 154
9.8.1 Array对象 154
9.8.2 Boolean对象 154
9.8.3 Date对象 155
9.8.4 Function对象 155
9.8.5 Global对象 155
9.8.6 Math对象 155
9.8.7 Number对象 156
9.8.8 Object对象 156
9.8.9 RegExp对象 156
9.8.10 String对象 156
第10章 如何发现和消除Bug 159
10.1 什么是Bug 160
10.2 Bug的类型 160
10.2.1 语法错误简介 160
10.2.2 运行时错误 161
10.2.3 逻辑错误 161
10.2.4 操作符优先错误 161
10.3 查找错误 163
10.4 缩小错误的查找范围 166
10.5 Microsoft Script Debugger 166
10.6 常见的错误 168
第三部分 在何处使用JavaScript 173
第11章 不拘一格地使用JavaScript 175
11.1 飞出<head>的牢笼 176
11.2 将JavaScript链接到Web页面 176
11.3 内联式JavaScript 179
11.4 策略问题 180
11.4.1 方针1 180
11.4.2 方针2 180
11.4.3 方针3 181
11.4.4 方针4 181
11.4.5 方针5 181
第四部分 JavaScript与Dynamic HTML 183
第12章 Dynamic HTML与JavaScript 185
12.1 DHTML的世界 186
12.2 DHTML的概念和特性 186
12.2.1 页面组件的面向对象的视图 187
12.2.2 样式表与分层 187
12.2.3 脚本 188
12.3 浏览器之间为什么存在差异 188
12.4 你能用DHTML做什么 189
第13章 层叠样式表与JavaScript 191
13.1 CSS简史 192
13.2 CSS简介 192
13.2.1 例1:改变文本颜色 195
13.2.2 例2:为文本添加格式 196
13.2.3 例3:为超链接添加格式 198
13.2.4 例4:定位 203
13.2.5 例5:三维效果 210
13.3 JavaScript与CSS 213
13.4 创建动画 221
13.4.1 什么是动画 221
13.4.2 动画与Internet Explorer 5 222
13.4.3 在Netscape Navigator 4中实现动画 227
13.4.4 让代码在两种浏览器中都能工作 230
13.4.5 上下移动 232
13.4.6 沿对角线移动 233
13.5 回到JavaScript 235
第14章 JavaScript与文档对象模型 237
14.1 DOM简介 238
14.2 DOM能给你多少力量 238
14.3 访问页面组件 239
14.3.1 访问页面组件的示例 239
14.3.2 组件多多益善 242
14.3.3 使用srcElement 243
14.3.4 添加id 244
14.3.5 父组件和子组件 246
14.3.6 展开和缩回文本 249
14.3.7 表格的单元格 251
14.4 事件模型 253
14.4.1 onClick事件 253
14.4.2 onContextmenu事件 254
14.4.3 onDblclick事件 255
14.4.4 onHelp事件 255
14.4.5 onKeydown事件 256
14.4.6 onKeypress事件 257
14.4.7 onKeyup事件 257
14.4.8 onMousedown事件 258
14.4.9 onMousemove事件 258
14.4.10 onMouseout事件 259
14.4.11 onMouseover事件 260
14.4.12 onMouseup事件 260
14.4.13 onStop事件 260
14.5 JavaScript的力量 261
第15章 更多的例子 263
15.1 例1:为Web页面添加最后修改日期 264
15.2 例2:简易的时钟 265
15.3 例3:简单的倒数计数器 268
15.4 例4:简单的表单验证 269
15.5 例5:轮换条 272
15.6 例6:滚动的状态栏消息 273
15.7 例7:对cookie进行控制 277