第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 MIME 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 PHP概述 21
1.9.8 Ajax概述 21
1.9.9 Servlet、JavaServer Pages和avaServer Faces概述 22
1.9.10 ASP.NET概述 22
1.9.11 Ruby概述 23
1.9.12 Rails概述 23
1.10 本章小结 24
1.11 复习题 25
1.12 练习题 26
第2章 XHTML简介 29
2.1 HTML和XHTML的起源和演变 29
2.1.1 HTML和XHTML的版本 30
2.1.2 HTML与XHTML 31
2.2 基本语法 31
2.3 XHTML文档的标准结构 32
2.4 基本的文本标记 33
2.4.1 段落 33
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 水平线 39
2.4.9 meta元素 40
2.5 图片 40
2.5.1 图片格式 40
2.5.2 〈img/〉标签 41
2.5.3 XHTML文档的验证 43
2.6 超链接 44
2.6.1 链接 45
2.6.2 位于文档内部的目标 47
2.6.3 使用链接 47
2.7 列表 47
2.7.1 无序列表 48
2.7.2 有序列表 48
2.7.3 定义列表 51
2.8 表格 52
2.8.1 基本的表格标签 52
2.8.2 属性rowspan与colspan 54
2.8.3 属性align与valign 56
2.8.4 属性cellpadding与cellspacing 57
2.8.5 表格分块 59
2.9 表单 59
2.9.1 〈form〉标签 59
2.9.2 〈input〉标签 60
2.9.3 〈select〉标签 63
2.9.4 〈textarea〉标签 65
2.9.5 动作按钮 66
2.9.6 一个完整的表单示例 66
2.10 HTML与XHTML之间的语法差异 69
2.11 本章小结 71
2.12 复习题 72
2.13 练习题 73
第3章 层叠样式表 75
3.1 简介 75
3.2 样式表的层次 76
3.3 样式说明格式 77
3.4 选择器格式 78
3.4.1 简单的选择器格式 78
3.4.2 类选择器 79
3.4.3 通用选择器 79
3.4.4 id选择器 80
3.4.5 通配选择器 80
3.4.6 伪类 80
3.5 属性值的格式 81
3.6 字体属性 82
3.6.1 字体族 83
3.6.2 字体大小 83
3.6.3 字体变体 84
3.6.4 字体样式 84
3.6.5 字体粗细 84
3.6.6 简写字体属性 84
3.6.7 文本修饰 87
3.7 列表属性 88
3.8 颜色 91
3.8.1 颜色组 91
3.8.2 颜色属性 92
3.9 文本对齐 93
3.10 盒模型 95
3.10.1 边框 95
3.10.2 内边距和外边距 97
3.11 背景图片 99
3.12 〈span〉标签和〈div〉标签 101
3.13 冲突解决方案 102
3.14 本章小结 103
3.15 复习题 104
3.16 练习题 105
第4章 JavaScript基础知识 107
4.1 JavaScript概述 107
4.1.1 起源 107
4.1.2 JavaScript与Java 108
4.1.3 JavaScript的用途 108
4.1.4 浏览器和XHTML/JavaScript文档 109
4.2 面向对象和JavaScript 110
4.3 一般的语法特征 111
4.4 基本数据类型、操作和表达式 113
4.4.1 基本数据类型 113
4.4.2 数值型和字符串字面量 114
4.4.3 其他基本数据类型 114
4.4.4 声明变量 115
4.4.5 数值运算符 115
4.4.6 Math对象 116
4.4.7 Number对象 117
4.4.8 字符串连接运算符 117
4.4.9 隐式类型转换 118
4.4.10 显式类型转换 118
4.4.11 String属性和方法 119
4.4.12 typeof运算符 120
4.4.13 赋值语句 120
4.4.14 Date对象 121
4.5 屏幕输出和键盘输入 121
4.6 控制语句 124
4.6.1 控制表达式 125
4.6.2 选择语句 126
4.6.3 switch语句 127
4.6.4 循环语句 129
4.7 创建和修改对象 131
4.8 数组 132
4.8.1 创建Array对象 132
4.8.2 Array对象的特征 133
4.8.3 Array方法 134
4.9 函数 136
4.9.1 基础知识 136
4.9.2 局部变量 137
4.9.3 参数 138
4.9.4 复习sort方法 140
4.10 示例一 140
4.11 构造函数 142
4.12 利用正则表达式进行模式匹配 142
4.12.1 字符和字符类模式 143
4.12.2 锚 145
4.12.3 模式修饰符 145
4.12.4 String对象中的其他模式匹配方法 146
4.13 示例二 146
4.14 脚本中的错误 148
4.15 本章小结 149
4.16 复习题 151
4.17 练习题 152
第5章 JavaScript与XHTML文档 155
5.1 JavaScript的执行环境 156
5.2 文档对象模型 156
5.3 在JavaScript中访问元素 159
5.4 事件与事件处理 162
5.4.1 事件处理的基本概念 162
5.4.2 事件、属性和标签 163
5.5 处理主体元素的事件 165
5.6 处理按钮元素的事件 166
5.7 处理文本框和密码框元素的事件 171
5.7.1 focus事件 171
5.7.2 验证表单输入 173
5.8 DOM 2事件模型 178
5.8.1 事件传播 179
5.8.2 事件处理程序的注册 180
5.8.3 DOM 2事件模型示例 181
5.9 navigator对象 183
5.10 DOM树的遍历和修改 185
5.10.1 DOM树的遍历 185
5.10.2 DOM树的修改 185
5.11 本章小结 185
5.12 复习题 186
5.13 练习题 187
第6章 利用JavaScript开发动态文档 189
6.1 简介 189
6.2 元素定位 190
6.2.1 绝对定位 190
6.2.2 相对定位 193
6.2.3 静态定位 194
6.3 移动元素 194
6.4 元素可见性 197
6.5 修改颜色和字体 198
6.5.1 修改颜色 198
6.5.2 修改字体 199
6.6 动态内容 201
6.7 堆叠元素 203
6.8 定位鼠标光标 206
6.9 响应鼠标单击 208
6.10 缓慢移动元素 209
6.11 拖放元素 212
6.12 本章小结 216
6.13 复习题 216
6.14 练习题 217
第7章 XML简介 219
7.1 简介 219
7.2 XML语法 221
7.3 XML文档结构 223
7.4 文档类型定义 225
7.4.1 元素声明 225
7.4.2 属性声明 227
7.4.3 实体声明 228
7.4.4 一个DTD的示例 228
7.4.5 内部和外部DTD 229
7.5 名称空间 230
7.6 XML架构 232
7.6.1 架构的基本原理 232
7.6.2 架构的定义 233
7.6.3 定义架构实例 234
7.6.4 数据类型概述 235
7.6.5 简单类型 235
7.6.6 复杂类型 236
7.6.7 架构实例的验证 238
7.7 显示没有格式化的XML文档 239
7.8 通过CSS显示XML文档 240
7.9 XSLT样式表 241
7.9.1 XSLT概述 242
7.9.2 用于表现的XSL转换 243
7.10 XML处理器 249
7.10.1 XML处理器的用途 249
7.10.2 SAX方式 249
7.10.3 DOM方式 250
7.11 Web服务 250
7.12 本章小结 251
7.13 复习题 253
7.14 练习题 254
第8章 Flash简介 257
8.1 Flash的起源与用途 257
8.2 初步了解Flash创作环境 258
8.3 绘图工具 262
8.3.1 预定义图形 262
8.3.2 线条和徒手画 267
8.3.3 文本 267
8.3.4 元件和库 268
8.4 静态图形 269
8.5 动画和声音 274
8.5.1 动画简介 274
8.5.2 移动图形 274
8.5.3 更多动画 276
8.5.4 形状动画 278
8.5.5 声音 280
8.6 用户交互 282
8.6.1 动作 283
8.6.2 Flash组件 283
8.6.3 示例 283
8.7 小结 286
8.8 复习题 287
8.9 练习题 288
第9章 PHP简介 289
9.1 PHP的起源和用途 289
9.2 PHP概述 290
9.3 基本语法特征 291
9.4 基本数据类型、操作和表达式 291
9.4.1 变量 292
9.4.2 整数类型 292
9.4.3 双精度类型 292
9.4.4 字符串类型 292
9.4.5 布尔类型 293
9.4.6 算术运算符和表达式 293
9.4.7 字符串操作 294
9.4.8 标量类型转换 295
9.4.9 赋值运算符 296
9.5 输出 296
9.6 控制语句 298
9.6.1 关系运算符 298
9.6.2 布尔运算符 298
9.6.3 选择语句 298
9.6.4 循环语句 299
9.6.5 示例 299
9.7 数组 301
9.7.1 创建数组 301
9.7.2 访问数组元素 302
9.7.3 数组处理函数 302
9.7.4 数组元素的按序访问 304
9.7.5 数组排序 306
9.8 函数 307
9.8.1 函数的基本特征 307
9.8.2 参数 308
9.8.3 变量的作用域 309
9.8.4 变量的生命周期 310
9.9 模式匹配 311
9.10 表单处理 313
9.11 文件 318
9.11.1 打开和关闭文件 318
9.11.2 读取文件 319
9.11.3 文件写入操作 320
9.11.4 文件加锁 320
9.12 cookie 320
9.12.1 cookie简介 321
9.12.2 PHP对cookie的支持 322
9.13 会话跟踪 322
9.14 本章小结 323
9.15 复习题 324
9.16 练习题 325
第10章 Ajax简介 329
10.1 Ajax概述 329
10.1.1 Ajax的历史 329
10.1.2 Ajax技术 330
10.1.3 实现Ajax 331
10.2 Ajax基础知识 332
10.2.1 应用程序 332
10.2.2 表单文档 332
10.2.3 请求阶段 334
10.2.4 响应文档 336
10.2.5 接收器阶段 337
10.2.6 跨浏览器支持 339
10.3 返回文档的格式 340
10.3.1 HTML和XHTML 340
10.3.2 XML 341
10.3.3 JavaScript Object Notation 342
10.4 Ajax工具包 343
10.4.1 Dojo 344
10.4.2 示例 346
10.4.3 Prototype 348
10.5 安全性与Ajax 349
10.6 本章小结 350
10.7 复习题 351
10.8 练习题 351
第11章 Java Web软件 353
11.1 servlet简介 353
11.1.1 概述 353
11.1.2 详解 354
11.1.3 servlet容器 357
11.2 NetBeans集成开发环境 358
11.3 调查表示例 365
11.4 在客户端存储信息 372
11.4.1 cookie 372
11.4.2 servlet对cookie的支持 373
11.4.3 示例 374
11.5 JSP 380
11.5.1 开发JSP的动机 380
11.5.2 JSP文档 380
11.5.3 表达式语言 383
11.5.4 JSTL中用于控制的动作元素 385
11.6 JavaBean 389
11.7 模型-视图-控制器应用体系结构 392
11.8 JSF 393
11.8.1 内核标签库和HTML标签库 394
11.8.2 JSF事件处理 395
11.8.3 示例应用程序 395
11.9 本章小结 400
11.10 复习题 401
11.11 练习题 402
第12章 ASP.NET简介 405
12.1 .NET Framework概述 405
12.1.1 背景 406
12.1.2 .NET语言 406
12.1.3 公共语言运行库 406
12.1.4 公共语言基础结构 407
12.2 C#简介 408
12.2.1 起源 408
12.2.2 基本数据类型和表达式 408
12.2.3 数据结构 409
12.2.4 控制语句 409
12.2.5 类、方法和结构 410
12.2.6 异常处理 411
12.2.7 输出 411
12.3 ASP.NET简介 412
12.3.1 基本知识 412
12.3.2 ASP.NET文档 413
12.3.3 代码隐藏文件 415
12.4 ASP.NET控件 417
12.4.1 Web控件 417
12.4.2 简单的ASP.NET文档的生命周期 418
12.4.3 Visual Studio 422
12.4.4 ASP.NET事件 427
12.4.5 用代码创建控件元素 428
12.4.6 控件的响应输出 429
12.4.7 列表控件 429
12.4.8 验证控件 433
12.4.9 主文档 439
12.5 ASP.NET AJAX 442
12.6 Web服务 447
12.6.1 构建Web服务 447
12.6.2 使用Web服务 450
12.6.3 传播Web服务 454
12.7 本章小结 454
12.8 复习题 455
12.9 练习题 457
第13章 基于Web的数据库访问 459
13.1 关系数据库 459
13.2 结构化查询语言简介 462
13.2.1 SELECT命令 462
13.2.2 连接 462
13.2.3 INSERT命令 464
13.2.4 UPDATE命令 464
13.2.5 DELETE命令 464
13.2.6 DROP命令 465
13.2.7 CREATETABLE命令 465
13.3 数据库访问的体系结构 466
13.3.1 客户端-服务器体系结构 466
13.3.2 Microsoft ODBC体系结构 466
13.3.3 PHP和数据库访问 467
13.3.4 Java JDBC体系结构 467
13.4 MySQL数据库系统 468
13.5 使用PHP和MySQL实现数据库访问 470
13.5.1 特殊字符的潜在问题 470
13.5.2 连接MySQL并选择数据库 471
13.5.3 请求MySQL操作 471
13.5.4 PHP-MySQL示例 472
13.6 使用JDBC和MySQL实现数据库访问 477
13.6.1 JDBC和MySQL 477
13.6.2 元数据 480
13.6.3 示例 481
13.7 使用ASP.NET和MySQL实现数据库访问 484
13.7.1 MySQL和ADO.NET 484
13.7.2 数据绑定 485
13.7.3 连接字符串 486
13.8 本章小结 490
13.9 复习题 491
13.10 练习题 492
第14章 Ruby简介 493
14.1 Ruby的起源与用途 493
14.2 标量类型及其操作 494
14.2.1 数值与字符串字面量 494
14.2.2 变量和赋值语句 495
14.2.3 数值运算符 496
14.2.4 String的方法 497
14.3 简单的输入输出 501
14.3.1 屏幕输出 501
14.3.2 键盘输入 501
14.4 控制语句 503
14.4.1 控制表达式 503
14.4.2 选择语句和循环语句 504
14.5 数组基础 507
14.5.1 for-in语句 508
14.5.2 数组和列表的内置方法 509
14.5.3 示例 511
14.6 散列 512
14.7 方法 514
14.7.1 基础知识 514
14.7.2 局部变量 515
14.7.3 参数 515
14.8 类 517
14.8.1 类的基础知识 517
14.8.2 访问控制 519
14.8.3 继承 521
14.9 块和迭代器 522
14.10 模式匹配 524
14.10.1 模式匹配的基础知识 524
14.10.2 存储匹配 526
14.10.3 替换 526
14.11 本章小结 527
14.12 复习题 527
14.13 练习题 528
第15章 Rails简介 529
15.1 Rails概述 529
15.2 文档请求 531
15.2.1 静态文档Hello World 531
15.2.2 动态文档 535
15.3 使用数据库的Rails应用程序 537
15.3.1 构建基本应用程序 538
15.3.2 完成应用程序 546
15.3.3 修改数据库 550
15.3.4 布局和样式表 552
15.4 采用Ajax技术的Rails 553
15.4.1 初始的表单文档 554
15.4.2 触发Ajax 556
15.4.3 控制器 558
15.5 本章小结 560
15.6 复习题 561
15.7 练习题 561
附录A Java简介 563
附录B 颜色名及其十六进制值 577
附录C Java Applet 581