第1章 基础知识 1
1.1 Internet简介 2
1.1.1 起源 2
1.1.2 Internet 2
1.1.3 IP地址 3
1.1.4 域名 3
1.2 万维网 5
1.2.1 起源 5
1.2.2 Web还是Internet 5
1.3 Web浏览器 6
1.4 Web服务器 7
1.4.1 Web服务器操作 7
1.4.2 服务器的一般特性 8
1.4.3 Apache 9
1.4.4 IIS 9
1.5 统一资源定位符 9
1.5.1 URL的格式 10
1.5.2 URL路径 10
1.6 多用途网际邮件扩充协议 11
1.6.1 类型说明 11
1.6.2 实验性文档类型 12
1.7 超文本传输协议 12
1.7.1 请求阶段 13
1.7.2 响应阶段 14
1.8 安全性 15
1.9 Web开发常用工具 17
1.9.1 XHTML概述 17
1.9.2 创建XHTML文档的工具 18
1.9.3 插件和过滤器 19
1.9.4 XML概述 19
1.9.5 JavaScript概述 20
1.9.6 Flash概述 20
1.9.7 Servlets、JavaServer Page和JavaServer Faces概述 21
1.9.8 ASP.NET概述 21
1.9.9 PHP概述 22
1.9.10 Ruby概述 22
1.9.11 Rails概述 22
1.9.12 Ajax概述 23
1.10 本章小结 24
1.11 复习题 25
1.12 练习题 27
第2章 XHTML简介 29
2.1 HTML和XHTML的起源和演变 30
2.1.1 HTML和XHTML的版本 30
2.1.2 HTML与XHTML 31
2.2 基本语法 32
2.3 XHTML文档的标准结构 33
2.4 基本的文本标记 33
2.4.1 段落 34
2.4.2 换行 35
2.4.3 保留空白字符 35
2.4.4 标题 36
2.4.5 文本块引用 37
2.4.6 字体样式与大小 38
2.4.7 字符实体 39
2.4.8 水平线 40
2.4.9 meta元素 40
2.5 图片 40
2.5.1 图片格式 41
2.5.2 〈img/〉标签 41
2.5.3 XHTML文档的验证 43
2.6 超链接 45
2.6.1 链接 46
2.6.2 位于文档内部的目标 48
2.6.3 使用链接 48
2.7 列表 48
2.7.1 无序列表 49
2.7.2 有序列表 49
2.7.3 定义列表 52
2.8 表格 53
2.8.1 基本的表格标签 53
2.8.2 属性rowspan与colspan 55
2.8.3 属性align与valign 57
2.8.4 属性cellpadding与cellspacing 58
2.8.5 表格分块 59
2.9 表单 60
2.9.1 〈form〉标签 60
2.9.2 〈input〉标签 61
2.9.3 〈select〉标签 64
2.9.4 〈textarea〉标签 66
2.9.5 动作按钮 67
2.9.6 一个完整的表单示例 67
2.10 HTML与XHTML之间的语法差异 70
2.11 本章小结 72
2.12 复习题 73
2.13 练习题 74
第3章 层叠样式表 77
3.1 简介 78
3.2 样式表的层次 78
3.3 样式说明格式 80
3.4 选择器格式 81
3.4.1 简单的选择器格式 81
3.4.2 类选择器 81
3.4.3 一般选择器 82
3.4.4 id选择器 82
3.4.5 通配选择器 82
3.4.6 伪类 83
3.5 属性值的格式 84
3.6 字体属性 85
3.6.1 字体族 85
3.6.2 字体大小 86
3.6.3 字体变体 86
3.6.4 字体样式 86
3.6.5 字体粗细 87
3.6.6 简写字体属性 87
3.6.7 文本装饰 89
3.7 列表属性 90
3.8 颜色 93
3.8.1 颜色组 94
3.8.2 颜色属性 94
3.9 文本对齐 95
3.10 盒模型 97
3.10.1 边框 97
3.10.2 内边距和外边距 99
3.11 背景图片 102
3.12 〈span〉标签和〈div〉标签 103
3.13 冲突解决方案 104
3.14 本章小结 105
3.15 复习题 107
3.16 练习题 108
第4章 JavaScript基础知识 111
4.1 JavaScript概述 112
4.1.1 起源 112
4.1.2 JavaScript与Java 112
4.1.3 JavaScript的用途 113
4.1.4 浏览器和XHTML/JavaScript文档 114
4.2 面向对象和JavaScript 114
4.3 一般的语法特征 115
4.4 原始数据、操作和表达式 118
4.4.1 原始数据类型 118
4.4.2 数值型和字符串字面量 118
4.4.3 其他原始类型 119
4.4.4 声明变量 119
4.4.5 数值操作符 120
4.4.6 Math对象 121
4.4.7 Number对象 121
4.4.8 字符串连接操作符 122
4.4.9 隐式类型转换 122
4.4.10 显式类型转换 123
4.4.11 String属性和方法 124
4.4.12 typeof操作符 124
4.4.13 赋值语句 125
4.4.14 Date对象 125
4.5 屏幕输出和键盘输入 126
4.6 控制语句 129
4.6.1 控制表达式 129
4.6.2 选择语句 130
4.6.3 switch语句 131
4.6.4 循环语句 133
4.7 创建和修改对象 135
4.8 数组 136
4.8.1 创建Array对象 136
4.8.2 Array对象的特征 137
4.8.3 Array方法 138
4.9 函数 140
4.9.1 基础知识 140
4.9.2 局部变量 141
4.9.3 参数 142
4.9.4 深入理解sort方法 144
4.10 示例一 144
4.11 构造函数 145
4.12 利用正则表达式进行模式匹配 146
4.12.1 字符和字符类模式 147
4.12.2 锚 149
4.12.3 模式修饰符 149
4.12.4 String对象中的其他模式匹配方法 149
4.13 示例二 150
4.14 脚本中的错误 152
4.15 本章小结 153
4.16 复习题 154
4.17 练习题 156
第5章 JavaScript与XHTML文档 159
5.1 JavaScript的执行环境 160
5.2 文档对象模型 160
5.3 在JavaScript中访问元素 164
5.4 事件与事件处理 166
5.4.1 事件处理的基本概念 166
5.4.2 事件、属性和标签 167
5.5 处理主体元素的事件 170
5.6 处理按钮元素的事件 171
5.7 处理文本框和密码框元素的事件 175
5.7.1 focus事件 175
5.7.2 验证表单输入 177
5.8 DOM 2事件模型 183
5.8.1 事件传播 184
5.8.2 事件处理程序的注册 185
5.8.3 DOM 2事件模型示例 186
5.9 navigator对象 188
5.10 DOM树的遍历和修改 189
5.10.1 DOM树的遍历 189
5.10.2 DOM树的修改 190
5.11 本章小结 190
5.12 复习题 191
5.13 练习题 192
第6章 利用JavaScript开发动态文档 193
6.1 简介 194
6.2 元素定位 194
6.2.1 绝对定位 194
6.2.2 相对定位 197
6.2.3 静态定位 198
6.3 移动元素 199
6.4 元素可见性 201
6.5 修改颜色和字体 202
6.5.1 修改颜色 202
6.5.2 修改字体 204
6.6 动态修改内容 205
6.7 堆叠元素 207
6.8 定位鼠标光标 210
6.9 响应鼠标单击 212
6.10 缓慢移动元素 213
6.11 拖放元素 216
6.12 本章小结 220
6.13 复习题 220
6.14 练习题 221
第7章 XML简介 223
7.1 简介 224
7.2 XML语法 225
7.3 XML文档结构 228
7.4 文档类型定义 229
7.4.1 元素声明 230
7.4.2 属性声明 231
7.4.3 实体声明 232
7.4.4 一个DTD的示例 232
7.4.5 内部和外部DTD 233
7.5 名称空间 234
7.6 XML架构 236
7.6.1 架构的基本原理 237
7.6.2 架构的定义 237
7.6.3 定义架构实例 238
7.6.4 数据类型概述 239
7.6.5 简单类型 240
7.6.6 复杂类型 241
7.6.7 架构实例的验证 243
7.7 显示没有格式化的XML文档 243
7.8 通过CSS显示XML文档 245
7.9 XSLT样式表 246
7.9.1 XSLT概述 247
7.9.2 用于表现的XSL转换 248
7.10 XML处理器 253
7.10.1 XML处理器的用途 254
7.10.2 SAX方式 254
7.10.3 DOM方式 254
7.11 Web服务 255
7.12 本章小结 256
7.13 复习题 258
7.14 练习题 259
第8章 Flash简介 261
8.1 Flash的起源与用途 262
8.2 初步了解Flash创作环境 262
8.3 绘图工具 265
8.3.1 预定义图形 265
8.3.2 线条和徒手画 269
8.3.3 文本 269
8.3.4 库和元件 270
8.4 示例一:静态图形 271
8.5 示例二:动画和声音 276
8.5.1 动画简介 277
8.5.2 移动图形 277
8.5.3 更多动画 278
8.5.4 形状动画 280
8.5.5 声音 280
8.6 用户交互 282
8.6.1 动作 282
8.6.2 Flash组件 283
8.6.3 示例 283
8.7 小结 285
8.8 复习题 285
8.9 练习题 286
第9章 PHP简介 287
9.1 PHP的起源和用途 288
9.2 PHP概述 288
9.3 基本语法特征 289
9.4 原始类型、操作和表达式 290
9.4.1 变量 290
9.4.2 整数类型 290
9.4.3 双精度类型 290
9.4.4 字符串类型 291
9.4.5 布尔类型 291
9.4.6 算术运算符和表达式 291
9.4.7 字符串操作 292
9.4.8 标量类型转换 293
9.4.9 赋值操作符 294
9.5 输出 294
9.6 控制语句 296
9.6.1 关系操作符 296
9.6.2 布尔操作符 296
9.6.3 选择语句 296
9.6.4 循环语句 297
9.6.5 示例 298
9.7 数组 299
9.7.1 创建数组 299
9.7.2 访问数组元素 300
9.7.3 数组处理函数 300
9.7.4 数组元素的按序访问 302
9.7.5 数组排序 304
9.8 函数 305
9.8.1 函数的基本特征 306
9.8.2 参数 306
9.8.3 变量的作用域 307
9.8.4 变量的生命周期 308
9.9 模式匹配 309
9.10 表单处理 311
9.11 文件处理 316
9.11.1 文件的打开和关闭 316
9.11.2 文件读取 317
9.11.3 文件写入操作 318
9.11.4 文件加锁 318
9.12 cookie 318
9.12.1 cookie简介 319
9.12.2 PHP对cookie的支持 320
9.13 会话跟踪 320
9.14 本章小结 321
9.15 复习题 322
9.16 练习题 323
第10章 Ajax简介 327
10.1 Ajax概述 328
10.1.1 Ajax的历史 328
10.1.2 Ajax技术 328
10.1.3 实现Ajax 330
10.2 Ajax基础知识 330
10.2.1 应用程序 330
10.2.2 表单文档 331
10.2.3 请求阶段 333
10.2.4 响应文档 334
10.2.5 接收器阶段 335
10.2.6 跨浏览器支持 337
10.3 返回文档的格式 338
10.3.1 XHTML 338
10.3.2 XML 339
10.3.3 JavaScript Object Notation 340
10.4 Ajax工具包 341
10.4.1 Dojo 342
10.4.2 示例 344
10.4.3 Prototype 347
10.5 安全性与Ajax 348
10.6 本章小结 348
10.7 复习题 349
10.8 练习题 350
第11章 Java Web软件 351
11.1 servlet简介 352
11.1.1 概述 352
11.1.2 详解 352
11.1.3 servlet容器 355
11.2 NetBeans集成开发环境 355
11.3 调查表示例 362
11.4 在客户端存储信息 368
11.4.1 cookie 369
11.4.2 servlet对cookie的支持 370
11.4.3 示例 371
11.5 JSP 376
11.5.1 开发JSP的动机 377
11.5.2 JSP文档 377
11.5.3 表达式语言 379
11.5.4 JSTL中用于控制的动作元素 382
11.6 JavaBean 386
11.7 JSF 390
11.7.1 内核库和HTML库 390
11.7.2 JSF事件处理 391
11.7.3 示例应用程序 392
11.8 本章小结 396
11.9 复习题 397
11.10 练习题 398
第12章 ASP.NET简介 401
12.1 .NET Framework概述 402
12.1.1 背景 402
12.1.2 .NET语言 402
12.1.3 公共语言运行库 403
12.1.4 公共语言基础结构 403
12.2 C#简介 404
12.2.1 起源 404
12.2.2 原始类型和表达式 404
12.2.3 数据结构 405
12.2.4 控制语句 405
12.2.5 类、方法和结构 406
12.2.6 异常处理 407
12.2.7 输出 407
12.3 ASP.NET简介 408
12.3.1 基本知识 408
12.3.2 ASP.NET文档 409
12.3.3 隐藏代码文件 411
12.4 ASP.NET控件 413
12.4.1 Web控件 413
12.4.2 简单的ASP.NET文档的生命周期 414
12.4.3 ASP.NET事件 417
12.4.4 用代码创建控件元素 419
12.4.5 控件的响应输出 420
12.4.6 示例 420
12.4.7 验证控件 422
12.4.8 主文档 425
12.5 ASP.NET AJAX 427
12.6 Web服务 434
12.6.1 构建Web服务 434
12.6.2 传播Web服务 437
12.6.3 使用Web服务 437
12.7 本章小结 438
12.8 复习题 439
12.9 练习题 440
第13章 基于Web的数据库访问 441
13.1 关系数据库 442
13.2 结构化查询语言简介 444
13.2.1 SELECT命令 445
13.2.2 连接 445
13.2.3 INSERT命令 446
13.2.4 UPDATE命令 447
13.2.5 DELETE命令 447
13.2.6 DROP命令 447
13.2.7 CREATE TABLE命令 448
13.3 数据库访问的体系结构 448
13.3.1 客户端/服务器体系结构 448
13.3.2 Microsoft Access体系结构 449
13.3.3 PHP和数据库访问 449
13.3.4 Java JDBC体系结构 450
13.4 MySQL数据库系统 450
13.5 使用PHP和MySQL实现数据库访问 452
13.5.1 特殊字符的潜在问题 453
13.5.2 连接MySQL并选择数据库 454
13.5.3 请求MySQL操作 454
13.5.4 PHP/MySQL示例 455
13.6 使用JDBC和MySQL实现数据库访问 460
13.6.1 JDBC和MySQL 460
13.6.2 元数据 463
13.6.3 示例 464
13.7 本章小结 467
13.8 复习题 468
13.9 练习题 469
第14章 Ruby简介 471
14.1 Ruby的起源与用途 472
14.2 标量类型及其操作 472
14.2.1 数值与字符串字面量 472
14.2.2 变量和赋值语句 473
14.2.3 数值操作符 474
14.2.4 String的方法 475
14.3 简单的输入输出 479
14.3.1 屏幕输出 479
14.3.2 键盘输入 480
14.4 控制语句 481
14.4.1 控制表达式 481
14.4.2 选择语句和循环语句 483
14.5 数组基础 485
14.5.1 for-in语句 486
14.5.2 数组和列表的内置方法 487
14.5.3 示例 490
14.6 散列 490
14.7 方法 492
14.7.1 基础知识 492
14.7.2 局部变量 493
14.7.3 参数 493
14.8 类 496
14.8.1 类的基础知识 496
14.8.2 访问控制 498
14.8.3 继承 500
14.9 块和迭代器 500
14.10 模式匹配 502
14.10.1 模式匹配的基础知识 502
14.10.2 存储匹配 504
14.10.3 替换 504
14.11 本章小结 505
14.12 复习题 505
14.13 练习题 506
第15章 Rails简介 507
15.1 Rails概述 508
15.2 文档请求 509
15.2.1 静态文档Hello World 510
15.2.2 动态文档 514
15.3 使用数据库的Rails应用程序 515
15.3.1 构建基本应用程序 515
15.3.2 完成应用程序 522
15.3.3 修改数据库 527
15.3.4 使用MySQL 529
15.3.5 布局和样式表 530
15.4 采用Ajax技术的Rails 531
15.4.1 初始的表单文档 532
15.4.2 触发Ajax 533
15.4.3 控制器 536
15.5 本章小结 537
15.6 复习题 538
15.7 练习题 539
附录A Java简介 541
附录B 颜色名及其十六进制值 555
附录C Java Applet 559