第1部分 JavaScript入门 1
1.1.1 Web基本结构 2
1.1 Web技术概述 2
第1章 JavaScript与Web基础 2
1.1.3 辅助程序和插件程序 4
1.1.2 Web运行机制 4
1.1.5 脚本编程 5
1.1.4 CGI技术 5
1.1.6 Java applet 6
1.2.1 JavaScript语言简史 7
1.2 JavaScript概述 7
1.2.2 JavaScript的主要特点 8
1.2.3 JavaScript脚本的应用场合 9
2.1.1 HTML标记 16
2.1 HTML文档基础 16
第2章 HTML文档 16
2.1.2 HTML文档的基本结构 17
2.2 HTML常用标记 18
2.1.3 使用〈body〉标记设置文档属性 18
2.2.1 文本标记 19
2.2.2 图像标记 28
2.2.3 超链接标记 29
2.2.4 表格标记 30
2.2.5 框架标记 33
3.1.2 选择浏览器 36
3.1.1 选择文本编辑器 36
第3章 JavaScript编程初步 36
3.1 设置编程环境 36
3.2.1 〈script〉标记 37
3.2 JavaScript编程步骤 37
3.2.2 〈script〉标记对位置 38
3.2.3 输入JavaScript脚本 40
3.2.5 检查和修改JavaScript脚本 41
3.2.4 运行JavaScript脚本 41
3.3.1 浏览器对JavaScript脚本的支持 43
3.3 JavaScript编程策略 43
3.3.2 确定用户使用的浏览器类型 44
3.3.3 处理不支持JavaScript脚本的情况 45
第2部分 JavaScript脚本指南 49
4.1.1 基本数据类型 50
4.1 数据 50
第4章 JavaScript语言基础 50
4.1.3 变量 51
4.1.2 常量 51
4.2.1 算术操作符 52
4.2 操作符 52
4.1.4 转义字符 52
4.2.2 比较操作符 54
4.2.3 字符操作符 55
4.2.4 逻辑操作符 56
4.2.5 位操作符 57
4.2.6 赋值操作符 59
4.3 表达式 60
4.3.1 操作符优先级 61
4.3.2 数据类型转换 62
5.1 基本处理流程 66
第5章 JavaScript基本语句 66
5.2.1 if语句 67
5.2 分支结构语句 67
5.2.2 if...else语句 69
5.2.3 switch语句 70
5.2.4 ?:操作符 73
5.3.1 for语句 74
5.3 循环结构 74
5.3.2 while语句 76
5.3.3 do...while语句 78
5.3.4 break语句和continue语句 79
5.4.1 函数的定义和调用 80
5.4 函数 80
5.4.2 变量作用域 81
5.4.3 JavaScript全局函数 84
6.1.1 对象 86
6.1 面向对象的编程 86
第6章 面向对象的编程和基于对象的编程 86
6.1.3 面向对象编程的特点 87
6.1.2 属性、方法和事件 87
6.2 基于对象的编程 88
6.1.4 对象组织的层次性 88
6.2.1 HTML结构和DOM 89
6.2.2 载入文档时 90
6.2.3 对象引用 92
6.2.4 如何定义对象 93
6.2.5 JavaScript核心对象 96
6.2.6 自定义对象 97
7.2 String对象 100
7.1 核心语言对象 100
第7章 String,Math,Date和Array对象 100
7.2.2 字符串方法 101
7.2.1 连接字符串 101
7.3 Math对象 103
7.4.1 使用Date对象 104
7.4 Date对象 104
7.4.2 日期计算 105
7.5 Array对象 106
7.5.2 存取数组数据 107
7.5.1 创建数组 107
7.5.3 关联数组 108
7.5.4 数组中的document对象 109
8.2 window对象 110
8.1 顶级对象 110
第8章 window对象和document对象 110
8.2.2 创建窗口 111
8.2.1 访问window对象的属性和方法 111
8.3.1 window.status属性 112
8.3 窗口属性和方法 112
8.3.3 window.confirm()方法 113
8.3.2 window.alert()方法 113
8.3.4 window.prompt()方法 114
8.4 location对象 115
8.3.5 onload事件处理程序 115
8.7 document对象 116
8.6 history对象 116
8.5 navigator对象 116
8.7.2 document.images[]属性 117
8.7.1 document.forms[]属性 117
8.7.4 document.write方法 118
8.7.3 document.title属性 118
8.7.5 document.createElement()和document.createTextNode()方法 120
9.1.1 作为对象和容器的表单 122
9.1 form对象 122
第9章 表单和表单对象 122
9.1.3 form.elements[]属性 123
9.1.2 访问表单属性 123
9.2.1 与文本相关的对象 124
9.2 作为对象的表单控件 124
9.2.3 复选框对象 126
9.2.2 按钮对象 126
9.2.4 单选按钮对象 127
9.2.5 select对象 128
9.3 向函数传递表单数据和元素 130
9.4 提交和预验证表单 132
10.1 框架:父框架和子框架 134
第10章 用脚本编写框架和多窗口 134
10.2.1 父到子的引用 135
10.2 在家庭成员之间引用 135
10.3 控制多框架 136
10.2.3 子到子的引用 136
10.2.2 子到父的引用 136
10.4 窗口引用的其他内容 138
11.1.2 预缓存图像 141
11.1.1 可互换的图像 141
第11章 图像和动态HTML 141
11.1 image对象 141
11.1.3 创建图像滚动 143
11.2 javascript:pseudo-URL 146
11.3.2 通过W3C DOM节点动态处理网页内容 147
11.3.1 更改样式表设置 147
11.3 常用的动态HTML技术 147
11.3.3 通过innerHTML属性动态处理网页内容 148
第3部分 文档对象模型参考 149
12.1.1 作为路径图的层次 150
12.1 对象模型层次 150
第12章 文档对象模型基础 150
12.1.2 浏览器文档对象路径图 151
12.3 对象属性 152
12.2 文档对象的产生过程 152
12.5 对象事件处理程序 153
12.4 对象方法 153
12.5.2 作为属性的事件处理程序 154
12.5.1 作为方法的事件处理程序 154
12.6 对象模型概述 155
12.6.3 NN4扩展 156
12.6.2 基本附加图像对象模型 156
12.6.1 基本对象模型 156
12.6.4 IE4扩展 158
12.6.5 IE5扩展 160
12.6.6 W3C DOM 161
12.7 新DOM概念 163
12.7.1 元素引用 165
12.7.2 节点层次 166
12.7.3 节点属性 167
12.7.4 节点方法 169
12.7.5 生成新节点内容 170
12.7.6 替换节点内容 171
12.8.1 传统的方法 172
12.8 混合对象模型 172
12.8.2 中间层 173
12.8.3 改进方法 176
12.9 标准兼容性模型 177
12.8.4 处理事件 177
13.1 通用对象 179
第13章 通用HTML元素对象 179
13.1.3 属性 181
13.1.2 关于这些对象 181
13.1.1 语法 181
13.1.4 方法 222
13.1.5 事件处理程序 259
第14章 window对象和frame对象 288
14.1 window对象概述 288
14.2 框架 289
14.2.1 创建框架 289
14.2.2 框架对象模型 289
14.2.3 引用框架 290
14.2.4 top和parent 291
14.2.5 禁止载入框架 291
14.2.6 允许载入框架 291
14.2.7 从有框架转换到无框架 292
14.2.8 空白框架 292
14.2.9 查看框架源代码 293
14.2.10 框架和frame元素对象 293
14.3 window对象 293
14.3.1 语法 295
14.3.2 属性 295
14.3.3 方法 320
14.3.4 事件处理程序 359
14.4 frame元素对象 364
14.4.1 语法 364
14.4.2 属性 365
14.5 frameset元素对象 369
14.5.1 语法 369
14.5.2 属性 370
14.6.1 语法 373
14.6.2 属性 373
14.6 iframe元素对象 373
14.7 popup对象 376
14.7.2 属性 377
14.7.3 方法 377
14.7.1 语法 377
第15章 location对象和history对象 380
15.1 location对象 380
15.1.1 语法 381
15.1.2 属性 382
15.1.3 方法 390
15.2 history对象 392
15.2.1 语法 393
15.2.2 属性 393
15.2.3 方法 394
第16章 document对象和body元素对象 398
16.1 document对象 398
16.1.1 语法 401
16.1.2 属性 401
16.1.3 方法 429
16.1.4 事件处理程序 444
16.2 body元素对象 445
16.2.1 语法 446
16.2.2 属性 446
16.2.3 方法 450
16.2.4 事件处理程序 451
16.3.1 语法 452
16.3.2 属性 452
16.3 TreeWalker对象 452
16.3.3 方法 453
第17章 link对象和anchor对象 455
17.1 语法 456
17.2 属性 456
第18章 image对象、area对象和map对象 461
18.1 image对象和img元素对象 461
18.1.1 语法 462
18.1.2 属性 462
18.1.3 事件处理程序 473
18.2 area元素对象 474
18.2.1 语法 475
18.2.2 属性 475
18.3 map元素对象 477
18.3.1 语法 477
18.3.2 属性 478
第19章 form及其相关对象 480
19.1 form对象 480
19.1.2 引用表单控件 481
19.1.3 将表单和元素传递到函数 481
19.1.1 语法 481
19.1.4 通过E-mail发送表单 484
19.1.6 表单按钮 485
19.1.7 提交后的重定位 485
19.1.5 改变表单属性 485
19.1.9 input元素对象 486
19.1.10 属性 486
19.1.8 表单元素数组 486
19.1.11 方法 490
19.1.12 事件处理程序 491
19.2 fieldset和legend元素对象 493
19.3 label元素对象 494
19.3.1 语法 494
19.3.2 属性 495
第20章 按钮对象 496
20.1 button元素对象和button,submit,reset输入对象 496
20.1.1 语法 497
20.1.2 属性 497
20.1.3 方法 498
20.1.4 事件处理程序 498
20.2 复选框输入对象 500
20.2.1 语法 500
20.2.2 属性 501
20.2.3 方法 503
20.2.4 事件处理程序 503
20.3 单选按钮输入对象 505
20.3.1 语法 506
20.3.2 属性 506
20.3.3 方法 508
20.3.4 事件处理程序 509
20.4 图像输入对象 510
20.4.1 语法 510
20.4.2 属性 511
第21章 与文本相关的表单对象 512
21.1 text输入对象 512
21.1.2 文本域和事件 513
21.1.1 语法 513
21.1.3 属性 515
21.1.4 方法 519
21.1.5 事件处理程序 521
21.3 hidden输入对象 523
21.2 password输入对象 523
21.4 textarea元素对象 524
21.4.2 文本域中的回车符 525
21.4.1 语法 525
21.4.4 方法 526
21.4.3 属性 526
22.1 select元素对象 527
第22章 select,option和fileUpload对象 527
22.1.1 语法 528
22.1.2 修改select选项(NN3+和IE4+) 529
22.1.3 修改select选项(IE4+) 532
22.1.4 修改select选项(W3C DOM) 533
22.1.5 属性 534
22.1.6 方法 540
22.1.7 事件处理程序 541
22.2 option元素对象 542
22.3 optgroup元素对象 543
22.2.2 属性 543
22.2.1 语法 543
22.3.2 属性 544
22.3.1 语法 544
22.4 file输入元素对象 545
23.1.1 事件的内容和事件发生的时间 547
23.1 事件 547
第23章 event对象 547
23.2.1 NN4事件传播 548
23.2 事件传播 548
23.1.2 静态Event对象 548
23.2.2 IE4+事件传播 557
23.2.3 W3C事件传播 560
23.3 引用event对象 564
23.3.2 W3C中的event对象引用 565
23.3.1 IE4+中的event对象引用 565
23.4 event对象兼容性 566
23.5.1 检查跨平台的修饰键 567
23.5 深入了解事件模型 567
23.5.2 跨平台的按键捕获 568
23.6.1 早期浏览器中的事件类型 569
23.6 事件类型 569
23.6.2 IE4+和NN6+/W3C中的事件类型 570
23.7.1 语法 571
23.7 NN4中的event对象 571
23.7.2 属性 572
23.8.1 语法 576
23.8 IE4+中的event对象 576
23.8.2 属性 577
23.9 NN6+/Moz/Safari中的event对象 589
23.9.2 属性 590
23.9.1 语法 590
23.9.3 方法 602
24.1.2 属性 604
24.1.1 语法 604
第24章 主体文本对象 604
24.1 blockquote元素对象和q元素对象 604
24.3.1 语法 605
24.3 font元素对象 605
24.2 br元素对象 605
24.2.1 语法 605
24.2.2 属性 605
24.3.2 属性 606
24.5 hr元素对象 608
24.4.2 属性 608
24.4 h1~h6元素对象 608
24.4.1 语法 608
24.5.2 属性 609
24.5.1 语法 609
24.6.1 语法 611
24.6 label素对象 611
24.7 marquee元素对象 612
24.6.2 属性 612
24.7.2 属性 613
24.7.1 语法 613
24.7.4 事件处理程序 616
24.7.3 方法 616
24.8 Range对象 617
24.8.1 语法 618
24.8.3 属性 619
24.8.2 使用range对象 619
24.8.4 方法 621
24.9 selection对象 631
24.9.2 属性 632
24.9.1 语法 632
24.9.3 方法 634
24.10 Text和TextNode对象 636
24.10.3 方法 637
24.10.2 属性 637
24.10.1 语法 637
24.11 TextRange对象 640
24.11.1 语法 641
24.11.3 浏览器兼容性 642
24.11.2 使用TextRange对象 642
24.11.4 属性 643
24.11.5 方法 645
24.12 TextRectangle对象 658
24.12.2 属性 659
24.12.1 语法 659
25.1 表对象层次结构 661
第25章 表和列表对象 661
25.1.1 填充单元格 662
25.1.2 修改单元格内容 663
25.1.3 修改表行 665
25.1.4 修改表列 670
25.1.5 W3C DOM表对象类 672
25.2 table元素对象 673
25.2.2 属性 674
25.2.1 语法 674
25.2.3 方法 681
25.3 tbody,tfoot和thead元素对象 683
25.3.2 属性 684
25.3.1 语法 684
25.5 col和colgroup元素对象 685
25.4 caption元素对象 685
25.5.2 属性 686
25.5.1 语法 686
25.6 tr元素对象 687
25.6.2 属性 688
25.6.1 语法 688
25.7 td和th元素对象 689
25.6.3 方法 689
25.7.2 属性 690
25.7.1 语法 690
25.8.2 属性 692
25.8.1 语法 692
25.8 ol元素对象 692
25.10 li元素对象 694
25.9.2 属性 694
25.9 ul元素对象 694
25.9.1 语法 694
25.11 dl,dt和dd元素对象 695
25.10.2 属性 695
25.10.1 语法 695
25.12 dir和menu元素对象 696
26.1 理解对象名称 697
第26章 样式表和样式对象 697
26.3 style元素对象 698
26.2 导入样式表 698
26.4 styleSheet对象 699
26.3.2 属性 699
26.3.1 语法 699
26.4.2 属性 700
26.4.1 语法 700
26.4.3 方法 704
26.5 cssRule和rule对象 705
26.5.2 属性 706
26.5.1 语法 706
26.6 currentStyle,runtimeStyle和style对象 707
26.6.2 Style属性 708
26.6.1 语法 708
26.6.3 属性值 709
26.6.4 text和font属性 711
26.6.5 inline display和layout属性 716
26.6.6 positioning属性 720
26.6.7 background属性 722
26.6.8 border和edge属性 723
26.6.11 table属性 726
26.6.10 scrollbar属性 726
26.6.9 list属性 726
26.6.12 page和printing属性 727
26.6.13 miscellaneous属性 728
26.7.2 读/写子属性 729
26.7.1 语法 729
26.7 filter对象 729
26.7.3 IE5.5+滤镜语法变化 733
27.1 clientInformation对象和navigator对象 738
第27章 navigator和其他环境对象 738
27.1.2 属性 739
27.1.1 语法 739
27.1.3 方法 749
27.2.2 属性 752
27.2.1 语法 752
27.2 mimeType对象 752
27.3.2 属性 754
27.3.1 语法 754
27.3 plugin对象 754
27.4.1 使用mimeType和plugin对象 755
27.4 查找MIME和插件程序 755
27.3.3 方法 755
27.4.3 验证插件程序 756
27.4.2 验证MIME类型 756
27.4.5 管理插件的安装 757
27.4.4 验证插件程序和MIME类型 757
27.4.6 在WinIE中的插件程序检测 758
27.5.1 语法 759
27.5 screen对象 759
27.5.2 属性 760
27.6.1 语法 762
27.6 userProfile对象 762
27.6.2 方法 763
28.1.1 改变元素背景 766
28.1 W3C定位对象 766
第28章 定位对象和嵌入对象 766
28.1.2 剪切层 768
28.1.3 编写嵌套层的脚本 773
28.1.4 在层中载入外部HTML 778
28.1.5 设定元素的可见性 780
28.1.6 层堆栈顺序的脚本编程 781
28.1.7 拖动层和调整层的大小 782
28.2 applet元素对象 786
28.2.2 属性 787
28.2.1 语法 787
28.3 object元素对象 789
28.3.2 属性 790
28.3.1 语法 790
28.4.1 语法 793
28.4 embed元素对象 793
28.4.2 属性 794
28.5 param元素的特例 795
29.1 元素和节点 796
第29章 XML对象 796
29.2 XML素对象 797
29.3 XMLHttpRequest对象 798
29.2.2 属性 798
29.2.1 语法 798
29.3.2 属性 799
29.3.1 语法 799
29.3.3 方法 801
第4部分 JavaScript核心语言参考 803
30.1 JavaScript版本与核心语言标准 804
第30章 JavaScript核心语言 804
30.2.1 〈script〉标记 805
30.2 兼容性设计 805
30.3 核心语言基础 806
30.2.2 脚本库(.js文件) 806
30.3.1 运算符 807
30.3.2 控制结构语句 809
30.3.3 核心对象 810
31.1.2 建立长字符串变量 812
31.1.1 简单字符串 812
第31章 String对象 812
31.1 字符串数据类型 812
31.1.4 特殊内嵌字符 813
31.1.3 连接字符串常量和变量 813
31.2 String对象 814
31.2.1 语法 815
31.2.2 属性 816
31.2.3 解析方法 817
31.3 字符串实用函数 827
31.4 设定字符格式的方法 828
31.5 URL字符串编码和解码 829
32.1.1 整型数值和浮点型数值 831
32.1 JavaScript数值 831
第32章 Math,Number和Boolean对象 831
32.1.2 十六进制和八进制整数 833
32.2.3 方法 834
32.2.2 属性 834
32.2 Math对象 834
32.2.1 语法 834
32.2.5 Math对象的快捷引用 835
32.2.4 创建随机数 835
32.3.1 语法 836
32.3 Number对象 836
32.3.3 方法 837
32.3.2 属性 837
32.4 Boolean对象 838
32.4.2 使用Boolean对象 839
32.4.1 语法 839
33.1.1 创建date对象 840
33.1 Date对象 840
第33章 Date对象 840
33.1.2 对象固有的属性和方法 841
33.1.3 日期方法 842
33.1.5 字符串日期 844
33.1.4 处理时区 844
33.1.6 适于旧浏览器的日期格式 845
33.1.7 日期和时间运算 846
33.1.8 计算天数 848
33.2 在表单中验证日期输入 850
33.1.9 日期的bug和漏洞 850
34.1.1 创建空数组 854
34.1 数组基本操作 854
第34章 Array对象 854
34.1.3 JavaScript创建数组方面的改善 855
34.1.2 向数组添加数据 855
34.2 并行数组 856
34.1.4 删除数组项 856
34.3 多维数组 858
34.4 array对象属性 860
34.5 array对象方法 861
35.1 正则表达式和模式 871
第35章 正则表达式和RegExp对象 871
35.2.2 特殊字符 872
35.2.1 简单模式 872
35.2 语言基础 872
35.3 对象关系 874
35.2.3 分组和向后引用 874
35.4.1 是否有匹配 878
35.4 使用正则表达式 878
35.4.2 得到匹配信息 879
35.4.3 字符串替换 881
35.5 正则表达式对象 882
35.5.2 属性 883
35.5.1 语法 883
35.5.3 方法 884
35.6.1 语法 885
35.6 RegExp对象 885
35.6.2 属性 886
36.1.1 语法 888
36.1 Function对象 888
第36章 Function对象和Object对象 888
36.1.2 创建函数 889
36.1.4 函数参数 890
36.1.3 嵌套函数 890
36.1.5 属性 891
36.1.6 方法 893
36.2.1 调用函数 894
36.2 函数应用注意事项 894
36.2.2 变量范围:全局还是局部 895
36.2.3 参数变量 897
36.2.5 创建函数库 898
36.2.4 递归函数 898
36.3.1 语法 899
36.3 Object对象 899
36.3.2 方法 900
37.2 异常机制 901
37.1 异常和错误 901
第37章 异常处理 901
37.3 使用try-catch-finally结构 902
37.4 抛出异常 905
37.5 error对象 908
37.5.2 属性 909
37.5.1 语法 909
37.5.3 方法 910
38.2 函数 911
38.1 概述 911
第38章 全局函数和语句 911
38.3 语句 917
38.4.2 Dictionary 920
38.4.1 ActiveXObject 920
38.4 WinIE对象 920
38.4.3 Enumerator 921
38.4.4 VBArray 922
第5部分 附录 923
附录A JavaScript保留字 924
附录B 网上脚本代码内容 925