
JavaScript 是Web 开发中应用最早、发展最成熟、用户最多的脚本语言。其语法简洁,代码可读性在 众多脚本语言中最好,它在使用时不用考虑数据类型,是真正意义上的动态语言。本书分为4 篇,共21 章。第一篇完整地讲解了JavaScript 的基础知识,主要内容包括JavaScript 概述、数据类型、常量与变量、表达式与运算符、程序语句、函数和数组等。第二篇专门介绍JavaScript 中内置对象的应用,内容包括JavaScript 对象基础、窗口和框架、屏幕和浏览器对象、文档对象、历史对象和地址对象、表单对象和表单元素和脚本化cookie 等。第三篇讲解的是JavaScript 的高级技术,主要讲解了JavaScript 与XML 技术、正则表达式、AJAX 基础、AJAX 高级应用、JavaScript 与插件和JavaScript 的调试与优化等。最后一篇为综合案例篇,用一个完整的例子讲解了如何使用JavaScript 进行大型应用开发。 本书中,每一篇都是不同层次的完整内容,这不仅给初学者安排了循序渐进的学习过程,也便于不同层次的读者选读。本书既适合没有编程基础的JavaScript 语言初学者作为入门教程,也可作为大、中专院校师生和培训班的教材。对于JavaScript 语言开发的爱好者,本书也有较大的参考价值。 本书附带DVD 光盘1 张,内容包括超大容量手把手教学视频、电子教案(PPT)、源代码、职场面试法宝等。
前言 千里之行,始于足下! ——老子 “21 天学编程系列”自2009 年1 月上市以来,一直受到广大读者的青睐。该系列中的大部分图书从一上市就登上了编程类图书销售排行榜的前列,很多大中专院校也将该系列中的一些图书作为教材使用,目前这些图书已经多次印刷、改版。可以说,“21 天学编程系列”是自2009 年以来国内原创计算机编程图书最有影响力的品牌之一。 为了使该系列图书能紧跟技术和教学的发展,更加适合读者学习和学校教学,我们结合最新技术和读者的建议,对该系列图书进行了改版(即第4 版)。本书便是该系列中的JavaScript分册。 本书有何特色 1.细致体贴的讲解 为了让读者更快上手,本书特别设计了适合初学者的学习方式,用准确的语言总结概念,用直观的图示演示过程?用详细的注释解释代码?用形象的比方帮助记忆。 知识点介绍 准确、清晰是其显著特点,一般放在每一节开始位置,让零基础的读者了解相关概念,顺利入门。 范例 书中出现的完整实例以章节顺序编号,便于检索和循序渐进地学习、实践,放在 每节知识点介绍之后。 示例代码 与范例编号对应,层次清楚、语句简洁、注释丰富,体现了代码优美的原则,有利于读者养成良好的代码编写习惯。对于大段程序,均在每行代码前设定编号,便于学习。 运行结果 对范例给出运行结果和对应图示,帮助读者更直观地理解范例代码。 代码解析 将范例代码中的关键代码行逐一进行解释,有助于读者掌握相关概念和知识。 习题 每章最后提供专门的测试习题,供读者检验所学知识是否牢固掌握。 贴心的提示 为了便于读者阅读,全书还穿插着一些技巧、提示等小贴士,体例约定如下。 ? 提示:通常是一些贴心的提醒,让读者加深印象或提供建议,或者解决问题的方法。 ? 注意:提出学习过程中需要特别注意的一些知识点和内容,或者相关信息。 ? 警告:对操作不当或理解偏差将会造成的灾难性后果给出警示,以加深读者印象。 经作者多年的培训和授课证明,以上讲解方式是最适合初学者学习的方式,读者按照这种 方式会非常轻松、顺利地掌握本书知识。 2.实用超值的DVD 光盘 为了帮助读者比较直观地学习,本书附带DVD 光盘,内容包括多媒体视频、电子教案(PPT)和实例源代码等。 ? 多媒体视频 配有长达23 小时的教学视频,讲解了关键知识点界面操作和书中的一些综合练习题。作者亲自配音、演示,手把手教会读者使用。 ? 电子教案(PPT) 本书可以作为高校相关课程的教材或课外辅导书,所以作者特别为本书制作了电子教案(PPT),以方便老师教学使用。 ? 职场面试法宝 本书附赠“职场面试法宝”,含常见的职场经典故事及测试题。 3.提供完善的技术支持 本书的技术支持论坛为http://www.rzchina.net,读者可以在上面提问交流。另外,论坛上还有一些小的教程、视频动画和各种技术文章,可帮助读者提高开发水平。 推荐的学习计划 本书作者在长期从事相关培训或教学实践过程中,归纳了最适合初学者的学习模式,并参考了多位专家的意见,为读者总结了合理的学习时间分配方式,列表如下: 第1 天 了解JavaScript 产生的背景 了解JavaScript 和其他脚本语言的异同 了解如何编写一个JavaScript 程序并运行它 牢记编写JavaScript 程序的注意事项? 第2 天 理解并掌握基本数据类型的特点 理解并掌握复合数据类型的特点,然后通过实际的练习加以巩固 理解并掌握常用的内置对象的特性和使用方法 第3 天 理解和掌握变量的定义和使用方法 理解和掌握常量的特点及其使用方法,简化程序的编码 加深对数据类型的理解 第4 天 理解并掌握JavaScript 表达式的特点,达到灵活运用的程度 理解并掌握各个运算符的作用和使用方法 结合前两章加强练习,以熟悉程序语句的编写 第5 天 理解并掌握条件选择语句的特点,在实际编程时能灵活使用 理解并掌握循环语句的特点和用法 掌握异常处理结构的使用方法 通过实际的练习来加深对程序控制结构的理解和应用 第6 天 理解函数的概念和作用 学会定义和调用函数 理解掌握函数的特点,有效地组织代码,实现代码复用 第7 天 理解并掌握数组的概念 理解并掌握数组各种常用的特性 熟练掌握数组中数据的存取操作 熟练掌握数组的各类操作和数组对象的常用方法 第8 天 了解面向对象的基本概念 掌握对象的定义和使用方法 掌握JavaScript 的对象层次结构 理解掌握事件概念和使用方法 第9 天 了解认识window 对象 掌握window 对象的属性和方法的使用 学会窗口的一些基本操作 掌握框架的结构特性 学会使用框架结构 第10 天 学习屏幕对象并掌握其基本运用 掌握浏览器对象及相关子对象的基本运用 能在网页程序开发中熟练使用这两个对象来解决实际问题 第11 天 理解并掌握document 对象,在应用开发中能够灵活运用 理解并掌握图像对象的特性及应用 理解并掌握锚对象的链接对象的特性及运用 第12 天 理解并掌握历史对象的特性及使用方法 了解地址对象及作用 能熟练运用历史对象和地址对象解决一些实际问题 第13 天 掌握表单对象的属性、方法和事件 熟练运用表单对象,特别是表单的验证 了解表单元素的概念和命名 熟练使用文本框和按钮的基本操作 第14 天 了解什么是cookie 及其作用 掌握创建和获取cookie 值的方法 掌握cookie 的编码、生存期、路径等设置方法 第15 天 了解XML 语言 掌握DOM 编程 学会使用DOM 进行Web 编程 第16 天 了解什么是正则表达式 掌握正则表达式的基础知识 学会如何使用正则表达进行字符串操作 第17 天 理解并掌握AJAX 技术原理 掌握常用的与AJAX 技术相关的对象的使用方法 学会实现简单的AJAX 应用 第18 天 了解客户端脚本语言,掌握基本的局部刷新技术 认识服务器脚本语言 掌握文档对象模型的基本使用方法 初步认识层叠样式和XML 第19 天 了解什么是ActiveX 控件及其创建过程 理解并熟练掌握ActiveX 控件的使用方法 了解什么是JavaApplet 及其创建过程 掌握JavaApplet 在Web 页中的使用方法 了解什么是Flash 及Flash 应用程序的创建过程 理解并熟练掌握JavaScript 与Flash 应用程序间的交互方法 第20 天 了解JavaScript 开发工具 了解Visual Studio 2005,并能在实际开发中运用 掌握使用Visual Studio 2005 调试JavaScript 代码的方法 掌握JavaScript 代码优化的常见方法 第21 天 了解对实际问题的分析过程 了解如何建立实际问题的抽象模型 学会使用JavaScript 控制DOM 元素 本书适合哪些读者阅读 本书非常适合以下人员阅读: ? 打算进入JavaScript 编程大门的新手; ? Web 开发的前沿程序员; ? 各大中专院校的在校学生和相关授课老师; ? 其他编程爱好者。 本书主要由马翠翠组织编写。其他参与编写的人员有张燕、杜海梅、孟春燕、吴金艳、鲍 凯、庞雁豪、杨锐丽、鲍洁、王小龙、李亚杰、张彦梅、刘媛媛、李亚伟、张昆(笔名:张增 强),在此一并表示感谢。 编 者
目录 第一篇 基础篇 第1章 JavaScript 概述( 教学视频:59 分钟) ......................................................... 1 1.1 初识JavaScript .................................................................................................................... 1 1.1.1 理解JavaScript 的历史 ........................................................................................................... 1 1.1.2 JavaScript 标准 ........................................................................................................................ 2 1.1.3 JavaScript 的现况 .................................................................................................................... 2 1.1.4 JavaScript 的发展趋势 ............................................................................................................ 3 1.2 简单的脚本语言 .................................................................................................................. 3 1.2.1 认识脚本语言 ......................................................................................................................... 3 1.2.2 脚本语言的分类 ..................................................................................................................... 3 1.2.3 JavaScript 的作用 .................................................................................................................... 4 1.2.4 JavaScript 和其他语言的异同 ................................................................................................ 4 1.2.5 JavaScript 与Java 的异同 ....................................................................................................... 4 1.3 第一个JavaScript 程序 ....................................................................................................... 4 1.3.1 预备知识 ................................................................................................................................. 4 1.3.2 选择JavaScript 编辑器 ........................................................................................................... 5 1.3.3 编写“Hello World”程序 ...................................................................................................... 6 1.3.4 浏览器对JavaScript 的支持 ................................................................................................... 7 1.4 注意事项 .............................................................................................................................. 8 1.4.1 大小写敏感 ............................................................................................................................. 8 1.4.2 注意空格与换行 ..................................................................................................................... 8 1.4.3 分号可有可无 ......................................................................................................................... 9 1.5 小结 ...................................................................................................................................... 9 1.6 习题 .................................................................................................................................... 10 第2章 数据类型( 教学视频:61 分钟).................................................................. 12 2.1 基本数据类型 .................................................................................................................... 12 2.1.1 字符串型数据 ....................................................................................................................... 12 2.1.2 深入理解字符串 ................................................................................................................... 13 2.1.3 使用数值型数据 ................................................................................................................... 14 2.1.4 使用布尔型数据 ................................................................................................................... 16 2.2 复合数据类型 .................................................................................................................... 17 2.2.1 常用内置对象 ....................................................................................................................... 17 2.2.2 常用日期对象 ....................................................................................................................... 18 2.2.3 理解全局对象 ....................................................................................................................... 20 2.2.4 常用数学对象 ....................................................................................................................... 21 2.2.5 常用字符串对象 ................................................................................................................... 23 2.2.6 掌握数组对象 ....................................................................................................................... 24 2.3 其他数据类型 .................................................................................................................... 26 2.3.1 使用函数 ............................................................................................................................... 26 2.3.2 使用空值 ............................................................................................................................... 27 2.3.3 使用不确定的类型 ............................................................................................................... 28 2.4 数据类型的转换 ................................................................................................................ 29 2.4.1 隐式类型转换 ....................................................................................................................... 29 2.4.2 显式类型转换 ....................................................................................................................... 30 2.5 小结 .................................................................................................................................... 31 2.6 习题 .................................................................................................................................... 31 第3章 变量和常量( 教学视频:47 分钟) .............................................................. 35 3.1 常量 .................................................................................................................................... 35 3.1.1 常量分类 ............................................................................................................................... 35 3.1.2 使用常量 ............................................................................................................................... 35 3.2 变量 .................................................................................................................................... 36 3.2.1 什么是变量 ........................................................................................................................... 36 3.2.2 如何定义变量 ....................................................................................................................... 37 3.2.3 变量的命名 ........................................................................................................................... 39 3.2.4 变量的作用范围 ................................................................................................................... 40 3.2.5 变量的用途 ........................................................................................................................... 41 3.3 JavaScript 关键字详解 ...................................................................................................... 42 3.4 小结 .................................................................................................................................... 42 3.5 习题 .................................................................................................................................... 43 第4章 表达式与运算符( 教学视频:88 分钟) ....................................................... 46 4.1 什么是表达式 .................................................................................................................... 46 4.2 什么是操作数 .................................................................................................................... 47 4.3 运算符概述 ........................................................................................................................ 48 4.3.1 什么是运算符 ....................................................................................................................... 48 4.3.2 操作数的分类 ....................................................................................................................... 48 4.4 算术运算符简介 ................................................................................................................ 49 4.4.1 加法运算符 ........................................................................................................................... 49 4.4.2 减法运算符 ........................................................................................................................... 49 4.4.3 乘法运算符 ........................................................................................................................... 50 4.4.4 除法运算符 ........................................................................................................................... 51 4.4.5 取模运算符 ........................................................................................................................... 51 4.4.6 负号运算符 ........................................................................................................................... 52 4.4.7 正号运算符 ........................................................................................................................... 52 4.4.8 递增运算符 ........................................................................................................................... 53 4.4.9 递减运算符 ........................................................................................................................... 54 4.5 关系运算符简介 ................................................................................................................ 55 4.5.1 相等运算符 ........................................................................................................................... 55 4.5.2 等同运算符 ........................................................................................................................... 56 4.5.3 不等运算符 ........................................................................................................................... 56 4.5.4 不等同运算符 ....................................................................................................................... 58 4.5.5 小于运算符 ........................................................................................................................... 58 4.5.6 大于运算符 ........................................................................................................................... 59 4.5.7 小于或等于运算符 ............................................................................................................... 60 4.5.8 大于或等于运算符 ............................................................................................................... 61 4.5.9 in 运算符 ............................................................................................................................... 61 4.5.10 instanceof 运算符 ................................................................................................................ 62 4.6 字符串运算符简介 ............................................................................................................ 63 4.7 赋值运算符简介 ................................................................................................................ 63 4.8 逻辑运算符简介 ................................................................................................................ 64 4.8.1 逻辑与运算符 ....................................................................................................................... 64 4.8.2 逻辑或运算符 ....................................................................................................................... 65 4.8.3 逻辑非运算符 ....................................................................................................................... 65 4.9 位运算符简介 .................................................................................................................... 66 4.9.1 位与运算符 ........................................................................................................................... 66 4.9.2 位或运算符 ........................................................................................................................... 67 4.9.3 位异或运算符 ....................................................................................................................... 67 4.9.4 位非运算符 ........................................................................................................................... 68 4.9.5 左移运算符 ........................................................................................................................... 69 4.9.6 带符号右移运算符 ............................................................................................................... 70 4.9.7 高位补0 右移运算符 ............................................................................................................ 70 4.10 其他运算符 ...................................................................................................................... 70 4.10.1 条件运算符 ......................................................................................................................... 71 4.10.2 new 运算符 .......................................................................................................................... 71 4.10.3 void 运算符 ......................................................................................................................... 71 4.10.4 类型检测运算符 ................................................................................................................. 72 4.10.5 对象属性存取运算符 .......................................................................................................... 72 4.10.6 数组存取运算符 ................................................................................................................. 73 4.10.7 delete 运算符 ....................................................................................................................... 74 4.10.8 逗号运算符 ......................................................................................................................... 74 4.10.9 函数调用运算符 ................................................................................................................. 75 4.10.10 this 运算符 ......................................................................................................................... 76 4.11 掌握运算符的优先级 ...................................................................................................... 76 4.12 小结 .................................................................................................................................. 78 4.13 习题 .................................................................................................................................. 78 第5章 控制语句( 教学视频:69 分钟).................................................................. 81 5.1 使用选择语句 .................................................................................................................... 81 5.1.1 if 选择语句 ............................................................................................................................ 81 5.1.2 if-else 选择语句 .................................................................................................................... 83 5.1.3 if-else-if 选择语句 ................................................................................................................. 84 5.1.4 switch 多条件选择语句 ........................................................................................................ 85 5.1.5 选择语句综合示例 ............................................................................................................... 86 5.2 使用循环语句 .................................................................................................................... 88 5.2.1 for 循环语句 .......................................................................................................................... 88 5.2.2 while 循环语句 ..................................................................................................................... 89 5.2.3 do-while 循环语句 ................................................................................................................ 90 5.2.4 for-in 循环语句 ..................................................................................................................... 91 5.2.5 break 和continue 跳转语句 .................................................................................................. 91 5.2.6 循环语句综合示例 ............................................................................................................... 92 5.3 使用异常处理语句 ............................................................................................................ 93 5.3.1 try-catch 语句 ........................................................................................................................ 93 5.3.2 try-catch-finally 语句............................................................................................................. 94 5.3.3 throw 语句 ............................................................................................................................. 95 5.3.4 异常处理语句综合示例 ........................................................................................................ 96 5.4 小结 .................................................................................................................................... 97 5.5 习题 .................................................................................................................................... 98 第6章 函数( 教学视频:68 分钟) ....................................................................... 103 6.1 函数的功能 ...................................................................................................................... 103 6.2 函数的定义 ...................................................................................................................... 103 6.2.1 函数的普通定义方式.......................................................................................................... 103 6.2.2 函数的变量定义方式.......................................................................................................... 106 6.2.3 函数的指针调用方式.......................................................................................................... 107 6.2.4 认识函数参数 ..................................................................................................................... 108 6.2.5 认识arguments 对象 ........................................................................................................... 108 6.3 函数返回类型 .................................................................................................................. 109 6.3.1 值类型 ................................................................................................................................. 110 6.3.2 引用类型 ............................................................................................................................. 110 6.3.3 使用返回函数 ..................................................................................................................... 110 6.4 函数的分类 ....................................................................................................................... 111 6.4.1 构造函数 ............................................................................................................................. 111 6.4.2 有返回值的函数 ................................................................................................................. 111 6.4.3 无返回值的函数 ................................................................................................................. 111 6.5 函数的作用域 .................................................................................................................. 112 6.5.1 公有函数的作用域 ............................................................................................................. 112 6.5.2 私有函数的作用域 ............................................................................................................. 112 6.5.3 使用this 关键字 .................................................................................................................. 113 6.6 小结 .................................................................................................................................. 114 6.7 习题 .................................................................................................................................. 114 第7章 数组( 教学视频:65 分钟) ....................................................................... 119 7.1 数组简介 .......................................................................................................................... 119 7.1.1 简单介绍数组概念 ............................................................................................................. 119 7.1.2 认识数组元素 ..................................................................................................................... 119 7.1.3 掌握多维数组 ..................................................................................................................... 120 7.2 如何创建一个数组 .......................................................................................................... 120 7.2.1 创建空数组 ......................................................................................................................... 120 7.2.2 指定数组长度创建新数组 .................................................................................................. 120 7.2.3 指定数组元素创建新数组 .................................................................................................. 121 7.2.4 直接创建新数组 ................................................................................................................. 121 7.3 数组元素基本操作 .......................................................................................................... 121 7.3.1 提取数据——读取数组元素 .............................................................................................. 122 7.3.2 添加数据——添加数组元素 .............................................................................................. 122 7.3.3 删除数据——删除数组元素 .............................................................................................. 122 7.3.4 详解数组元素个数 ............................................................................................................. 122 7.4 数组对象常见操作 .......................................................................................................... 123 7.4.1 字符转换——数组转换为字符串 ...................................................................................... 123 7.4.2 字符连接——数组元素连接成字符串 .............................................................................. 123 7.4.3 数据添加——在数组尾部添加元素 .................................................................................. 124 7.4.4 数据更新——删除数组的最后一个元素 .......................................................................... 125 7.4.5 删除数据——移除数组顶端的元素 .................................................................................. 126 7.4.6 添加数据——在数组头部添加元素 .................................................................................. 127 7.4.7 扩充数组——添加元素并生成新数组 .............................................................................. 128 7.4.8 更新移动数据——删除、替换或插入数组元素 ............................................................... 129 7.4.9 生成特定数据——获取数组中的一部分元素 ................................................................... 131 7.4.10 置换数据——颠倒数组元素的顺序 ................................................................................ 131 7.4.11 数据排序——对数组元素进行排序 ................................................................................. 132 7.4.12 数据转换——将对象转换为本地字符串 ........................................................................ 134 7.5 小结 .................................................................................................................................. 135 7.6 习题 .................................................................................................................................. 135 第二篇 对象篇 第8章 JavaScript面向对象基础( 教学视频:44 分钟) ...................................... 138 8.1 面向对象概念 .................................................................................................................. 138 8.1.1 面向对象中的语言 ............................................................................................................. 138 8.1.2 对象的构成方式 ................................................................................................................. 139 8.2 对象应用 .......................................................................................................................... 139 8.2.1 详解对象声明和实例化 ...................................................................................................... 139 8.2.2 详解对象的引用 ................................................................................................................. 141 8.2.3 详解对象的废除 ................................................................................................................. 141 8.2.4 详解对象的早绑定和晚绑定 .............................................................................................. 142 8.3 JavaScript 的对象层次 .................................................................................................... 142 8.3.1 JavaScript 对象模型结构 .................................................................................................... 142 8.3.2 客户端对象层次简单介绍 .................................................................................................. 143 8.3.3 浏览器对象模型详解.......................................................................................................... 143 8.4 事件驱动与事件处理 ...................................................................................................... 144 8.4.1 详解事件与事件驱动.......................................................................................................... 144 8.4.2 掌握事件与处理代码关联 .................................................................................................. 145 8.4.3 函数调用事件 ..................................................................................................................... 146 8.4.4 代码调用事件 ..................................................................................................................... 147 8.4.5 掌握设置对象事件的方法 .................................................................................................. 148 8.4.6 掌握显式调用事件处理程序 .............................................................................................. 149 8.4.7 事件处理程序的返回值 ...................................................................................................... 149 8.4.8 事件与this 运算符 .............................................................................................................. 151 8.5 常用事件 .......................................................................................................................... 152 8.5.1 详解浏览器事件 ................................................................................................................. 152 8.5.2 详解鼠标移动事件 ............................................................................................................. 152 8.5.3 详解鼠标单击事件 ............................................................................................................. 153 8.5.4 详解加载与卸载事件.......................................................................................................... 154 8.5.5 详解得到焦点与失去焦点事件 .......................................................................................... 154 8.5.6 详解键盘事件 ..................................................................................................................... 154 8.5.7 详解提交与重置事件.......................................................................................................... 155 8.5.8 详解选择与改变事件.......................................................................................................... 155 8.6 小结 .................................................................................................................................. 156 8.7 习题 .................................................................................................................................. 156 第9章 窗口和框架( 教学视频:70 分钟) ............................................................ 159 9.1 window 对象 .................................................................................................................... 159 9.1.1 认识window 对象 ............................................................................................................... 159 9.1.2 认识window 对象的使用方法 ........................................................................................... 159 9.2 window 对象事件及使用方法 ........................................................................................ 160 9.2.1 装进去—装载文档.......................................................................................................... 160 9.2.2 卸下来—卸载文档.......................................................................................................... 161 9.2.3 焦点处理——得到焦点与失去焦点 .................................................................................. 162 9.2.4 调整窗口的大小 ................................................................................................................. 163 9.2.5 对错误进行处理 ................................................................................................................. 163 9.3 对话框 .............................................................................................................................. 164 9.3.1 过滤错误——警告对话框 .................................................................................................. 164 9.3.2 信息确认——询问对话框 .................................................................................................. 165 9.3.3 信息录入——输入对话框 .................................................................................................. 166 9.4 状态栏 .............................................................................................................................. 167 9.4.1 详解状态栏 ......................................................................................................................... 167 9.4.2 认识默认状态栏信息.......................................................................................................... 167 9.4.3 认识状态栏瞬间信息.......................................................................................................... 168 9.5 窗口操作 .......................................................................................................................... 169 9.5.1 打开一个新窗口 ................................................................................................................. 169 9.5.2 认识窗口名字 ..................................................................................................................... 170 9.5.3 如何关闭窗口 ..................................................................................................................... 171 9.5.4 对窗口进行引用 ................................................................................................................. 172 9.5.5 对文档进行滚动 ................................................................................................................. 173 9.6 超时与时间间隔 .............................................................................................................. 174 9.6.1 对代码延迟执行 ................................................................................................................. 174 9.6.2 认识周期性执行代码.......................................................................................................... 175 9.6.3 停止执行周期性执行代码 .................................................................................................. 176 9.6.4 取消延迟代码执行 ............................................................................................................. 177 9.7 框架操作 .......................................................................................................................... 178 9.7.1 框架简介 ............................................................................................................................. 178 9.7.2 详解父窗口与子窗口.......................................................................................................... 178 9.7.3 详解窗口之间的关系.......................................................................................................... 179 9.7.4 认识窗口名字 ..................................................................................................................... 180 9.8 小结 .................................................................................................................................. 180 9.9 习题 .................................................................................................................................. 180 第10章 屏幕和浏览器对象( 教学视频:60 分钟) ............................................... 183 10.1 认识屏幕对象 ................................................................................................................ 183 10.1.1 利用屏幕对象检测显示器参数 ........................................................................................ 183 10.1.2 利用屏幕对象检测客户端显示器屏幕分辨率 ................................................................ 184 10.1.3 利用屏幕对象检测客户端显示器屏幕的有效宽度和高度 ............................................ 185 10.1.4 利用屏幕对象进行网页开屏 ............................................................................................ 186 10.2 认识浏览器对象 ............................................................................................................ 187 10.2.1 获取浏览器对象的属性值 ................................................................................................ 187 10.2.2 MimeType 对象和Plugin 对象详解 ................................................................................. 188 10.2.3 浏览器对象的javaEnabled 属性详解 .............................................................................. 189 10.3 小结 ................................................................................................................................ 190 10.4 习题 ................................................................................................................................ 190 第11章 文档对象( 教学视频:84 分钟) .............................................................. 193 11.1 文档对象概述 ................................................................................................................ 193 11.1.1 初识文档对象 .................................................................................................................... 193 11.1.2 详解文档对象的使用方法 ................................................................................................ 193 11.1.3 对标签中的值进行引用 .................................................................................................... 194 11.1.4 详解引用文档中对象的方法 ............................................................................................ 195 11.2 文档对象的应用 ............................................................................................................ 197 11.2.1 美化链接——设置超链接的颜色 .................................................................................... 197 11.2.2 美化网页——设置网页背景颜色和默认文字颜色 ......................................................... 198 11.2.3 设置文档信息 .................................................................................................................... 199 11.2.4 如何在标题栏中显示滚动信息 ........................................................................................ 200 11.2.5 如何防止盗链 .................................................................................................................... 201 11.2.6 详解在网页中输出内容 .................................................................................................... 202 11.2.7 详解在其他文档中输出内容 ............................................................................................ 202 11.2.8 详解输出非HTML 文档 .................................................................................................. 204 11.2.9 认识文档中的所有HTML 元素 ....................................................................................... 205 11.2.10 如何引用文档中的HTML 元素 ..................................................................................... 206 11.2.11 如何引用文档元素中的子元素 ...................................................................................... 207 11.3 图像对象 ........................................................................................................................ 208 11.3.1 图像对象概述 .................................................................................................................... 208 11.3.2 如何创建和使用图像对象 ................................................................................................ 209 11.3.3 掌握图像对象的onerror 事件 .......................................................................................... 210 11.3.4 掌握显示图片的信息 ........................................................................................................ 211 11.3.5 对图片进行置换 ................................................................................................................ 212 11.3.6 认识随机图片 .................................................................................................................... 213 11.3.7 动态改变图片大小 ............................................................................................................ 214 11.4 链接对象 ........................................................................................................................ 216 11.4.1 链接对象简介 .................................................................................................................... 216 11.4.2 掌握感知鼠标移动事件 .................................................................................................... 216 11.4.3 对一个网页上的所有超链接进行查看 ............................................................................ 217 11.4.4 认识翻页程序 .................................................................................................................... 218 11.4.5 认识网站目录 .................................................................................................................... 220 11.5 锚对象 ............................................................................................................................ 222 11.5.1 锚对象简介 ....................................................................................................................... 222 11.5.2 认识锚对象与链接对象的区别 ........................................................................................ 222 11.5.3 巧建文档索引 .................................................................................................................... 223 11.6 小结 ................................................................................................................................ 224 11.7 习题 ................................................................................................................................ 225 第12章 历史对象和地址对象( 教学视频:50 分钟) ........................................... 229 12.1 历史对象 ........................................................................................................................ 229 12.1.1 历史对象简介 ................................................................................................................... 229 12.1.2 如何前进到上一页和后退到下一页 ................................................................................ 229 12.1.3 如何实现页面的跳转 ........................................................................................................ 231 12.2 地址对象 ........................................................................................................................ 232 12.2.1 URL 对象简介 .................................................................................................................. 232 12.2.2 如何获取指定地址的各属性值 ........................................................................................ 232 12.2.3 如何加载新网页 ............................................................................................................... 233 12.2.4 如何获取参数 ................................................................................................................... 234 12.2.5 如何装载新文档与重新装载当前文档 ............................................................................ 235 12.2.6 如何刷新文档 ................................................................................................................... 236 12.2.7 如何加载新文档 ............................................................................................................... 237 12.3 小结 ................................................................................................................................ 238 12.4 习题 ................................................................................................................................ 238 第13章 表单对象和表单元素( 教学视频:64 分钟) ........................................... 241 13.1 表单对象概述 ................................................................................................................ 241 13.1.1 表单对象简介 ................................................................................................................... 241 13.1.2 对大小写进行转换 ........................................................................................................... 241 13.1.3 表单的提交和重置 ........................................................................................................... 243 13.1.4 响应表单的提交和重置 .................................................................................................... 244 13.2 表单对象的应用 ............................................................................................................ 245 13.2.1 如何进行表单验证 ........................................................................................................... 245 13.2.2 认识循环验证表单 ........................................................................................................... 247 13.2.3 掌握设置表单的提交方式 ................................................................................................ 248 13.2.4 认识重置表单的提示 ........................................................................................................ 249 13.2.5 如何不使用提交按钮来提交表单 .................................................................................... 250 13.3 表单元素 ........................................................................................................................ 252 13.3.1 表单元素简介 ................................................................................................................... 252 13.3.2 表单元素的命名方式 ........................................................................................................ 252 13.4 文本框 ............................................................................................................................ 254 13.4.1 认识文本框的创建方式 .................................................................................................... 254 13.4.2 如何查看文本框的属性值 ................................................................................................ 254 13.4.3 如何动态跟踪文本框中输入的文字个数 ........................................................................ 255 13.4.4 如何限制文本框中输入的字数 ........................................................................................ 256 13.4.5 如何自动选择文本框中的文字 ........................................................................................ 257 13.5 按钮 ................................................................................................................................ 258 13.5.1 按钮简介 ........................................................................................................................... 258 13.5.2 按钮创建方式简介 ........................................................................................................... 258 13.5.3 认识网页调色板 ............................................................................................................... 258 13.5.4 如何改变多行文本框大小 ................................................................................................ 260 13.6 小结 ................................................................................................................................ 261 13.7 习题 ................................................................................................................................ 261 第14章 脚本化cookie( 教学视频:59 分钟) ...................................................... 265 14.1 cookie对象简介 ............................................................................................................ 265 14.1.1 什么是cookie对象 ........................................................................................................... 265 14.1.2 cookie的作用和检测用户浏览器是否支持cookie ......................................................... 265 14.2 如何创建与读取cookie ................................................................................................ 266 14.3 如何获取cookie 的值 ................................................................................................... 267 14.4 认识cookie 的编码 ....................................................................................................... 268 14.5 掌握cookie 的生存期 ................................................................................................... 271 14.6 掌握cookie 的路径和域 ............................................................................................... 272 14.7 了解cookie 的安全性 ................................................................................................... 273 14.8 掌握使用cookie 的注意事项 ....................................................................................... 275 14.9 小结 ................................................................................................................................ 275 14.10 习题 .............................................................................................................................. 275 第三篇 高级技术篇 第15章 JavaScript与XML技术( 教学视频:84 分钟) ...................................... 281 15.1 XML简介 ...................................................................................................................... 281 15.1.1 针对XML的API概述 .................................................................................................... 281 15.1.2 认识节点的层次 ............................................................................................................... 281 15.1.3 掌握特定语言的文档模型 ................................................................................................ 282 15.2 使用DOM ..................................................................................................................... 282 15.2.1 巧妙访问相关的节点 ........................................................................................................ 283 15.2.2 巧测节点类型 ................................................................................................................... 284 15.2.3 简单处理节点属性 ........................................................................................................... 285 15.2.4 如何访问指定节点 ........................................................................................................... 286 15.2.5 如何创建新节点 ............................................................................................................... 288 15.2.6 如何修改节点 ................................................................................................................... 289 15.3 HTML DOM特性 ......................................................................................................... 290 15.3.1 让特性像属性一样 ........................................................................................................... 291 15.3.2 认识表格相关特性 ........................................................................................................... 292 15.4 遍历DOM文档 ............................................................................................................ 293 15.4.1 认识文档节点迭代器 ........................................................................................................ 293 15.4.2 巧妙遍历文档树 ............................................................................................................... 294 15.5 如何测试与DOM标准的一致性 ................................................................................. 296 15.6 小结 ................................................................................................................................ 297 15.7 习题 ................................................................................................................................ 297 第16章 正则表达式( 教学视频:40 分钟) .......................................................... 300 16.1 正则表达式基础 ............................................................................................................ 300 16.1.1 为何使用正则表达式 ........................................................................................................ 300 16.1.2 使用RegExp对象 ............................................................................................................. 300 16.2 简单模式 ........................................................................................................................ 301 16.2.1 详解元字符 ....................................................................................................................... 301 16.2.2 详解量词 ........................................................................................................................... 302 16.3 复杂模式 ........................................................................................................................ 303 16.3.1 使用分组 ........................................................................................................................... 304 16.3.2 使用候选 ........................................................................................................................... 304 16.3.3 使用非捕获性分组 ........................................................................................................... 305 16.3.4 使用前瞻 ........................................................................................................................... 306 16.4 常用模式 ........................................................................................................................ 307 16.4.1 使用正则表达式验证日期 ................................................................................................ 307 16.4.2 使用正则表达式验证电子邮件地址 ................................................................................ 309 16.5 小结 ................................................................................................................................ 310 16.6 习题 ................................................................................................................................ 310 第17章 AJAX基础( 教学视频:68 分钟) ........................................................... 314 17.1 了解传统的Web技术及AJAX的由来 ....................................................................... 314 17.2 AJAX技术原理简介 ..................................................................................................... 315 17.3 AJAX技术的优缺点分析 ............................................................................................. 315 17.4 认识AJAX技术的组成部分 ........................................................................................ 316 17.4.1 AJAX中的JavaScript技术 .............................................................................................. 316 17.4.2 AJAX中的XMLHttpRequest技术 .................................................................................. 316 17.4.3 AJAX中的CSS 技术 ....................................................................................................... 316 17.4.4 AJAX中的DOM技术 ..................................................................................................... 317 17.4.5 AJAX中的XML技术 ..................................................................................................... 317 17.5 XMLHttpRequest对象简介 .......................................................................................... 317 17.5.1 XMLHttpRequest简介 ...................................................................................................... 317 17.5.2 XMLHttpRequest如何创建 .............................................................................................. 317 17.6 局部更新 ........................................................................................................................ 318 17.7 实现AJAX .................................................................................................................... 320 17.7.1 详解实现AJAX的步骤 ................................................................................................... 320 17.7.2 如何创建HTTP请求 ........................................................................................................ 320 17.7.3 如何设置HTTP响应回调函数 ........................................................................................ 321 17.7.4 如何发送HTTP请求 ........................................................................................................ 321 17.7.5 一个完整的AJAX实例 ................................................................................................... 321 17.8 小结 ................................................................................................................................ 323 17.9 习题 ................................................................................................................................ 323 第18章 AJAX高级应用( 教学视频:64 分钟).................................................... 328 18.1 客户端脚本语言详解 .................................................................................................... 328 18.1.1 如何使用JavaScript的局部刷新技术 ............................................................................. 328 18.1.2 如何使用iframe的局部刷新技术 ................................................................................... 329 18.2 服务器脚本语言详解 .................................................................................................... 331 18.2.1 掌握改进的iframe局部刷新 ........................................................................................... 331 18.2.2 掌握AJAX与服务器互动 ............................................................................................... 332 18.3 小结 ................................................................................................................................ 334 18.4 习题 ................................................................................................................................ 334 第19章 JavaScript与插件( 教学视频:96 分钟) ............................................... 338 19.1 掌握ActiveX控件的应用 ............................................................................................ 338 19.1.1 创建ActiveX控件 ............................................................................................................ 338 19.1.2 添加ATL控件 .................................................................................................................. 340 19.1.3 为控件添加属性 ............................................................................................................... 341 19.1.4 为实现类添加成员变量 .................................................................................................... 341 19.1.5 改写相关函数 ................................................................................................................... 341 19.1.6 添加事件功能 ................................................................................................................... 344 19.1.7 添加事件激发功能 ........................................................................................................... 345 19.1.8 编译生成控件 ................................................................................................................... 346 19.1.9 使用ActiveX控件 ............................................................................................................ 347 19.2 JavaApplet ...................................................................................................................... 349 19.2.1 如何安装JDK ................................................................................................................... 349 19.2.2 如何创建Applet ................................................................................................................ 351 19.2.3 如何使用Applet ................................................................................................................ 352 19.3 Flash 概述 ...................................................................................................................... 353 19.3.1 如何创建Flash .................................................................................................................. 353 19.3.2 认识Flash与JavaScript的交互 ...................................................................................... 357 19.4 小结 ................................................................................................................................ 359 19.5 习题 ................................................................................................................................ 359 第20章 JavaScript的调试与优化( 教学视频:57 分钟) .................................... 365 20.1 JavaScript开发工具深入剖析 ...................................................................................... 365 20.2 JavaScript的调试简介 .................................................................................................. 366 20.2.1 如何进行调试前的准备工作 ............................................................................................ 366 20.2.2 如何进行调试 ................................................................................................................... 367 20.2.3 如何跟踪代码 ................................................................................................................... 368 20.3 对日志进行输出 ............................................................................................................ 369 20.4 对代码进行优化 ............................................................................................................ 371 20.5 小结 ................................................................................................................................ 373 20.6 习题 ................................................................................................................................ 374 第四篇 综合案例篇 第21章 捡馅饼游戏( 教学视频:63 分钟) .......................................................... 376 21.1 创作思路及基本场景的实现 ........................................................................................ 376 21.1.1 创作思路 ........................................................................................................................... 376 21.1.2 实现基本场景及用户界面 ................................................................................................ 376 21.2 设计游戏角色 ................................................................................................................ 379 21.2.1 馅对象 ............................................................................................................................... 379 21.2.2 饼对象 ............................................................................................................................... 380 21.3 游戏进程控制 ................................................................................................................ 383 21.3.1 初始化游戏 ....................................................................................................................... 383 21.3.2 游戏启动控制 ................................................................................................................... 383 21.3.3 游戏循环 ........................................................................................................................... 385 21.3.4 游戏结束控制 ................................................................................................................... 386 21.3.5 运行测试 ........................................................................................................................... 387 21.4 小结 ................................................................................................................................ 388
本书作者团队成员为一线开发工程师、资深编程专家或专业培训师,在编程开发方面有着丰富的经验,并已出版过多本相关畅销书,颇受广大读者认可。长期积累的开发实战经验,结合对编程入门爱好者需求与特点的深入调查研究,本书的内容结构十分有利于编程爱好者和相关学员快速提高水平。