首页>参考读物>计算机科学与技术>综合

JavaScript从入门到精通(视频实战版)
作者 : 高宏 等编著
丛书名 : 程序员书库
出版日期 : 2010-12-15
ISBN : 978-7-111-32487-4
定价 : 60.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 500
开本 : 16
原书名 :
原出版社:
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

本书一共分为四篇,涵盖了JavaScript语言应用的绝大多数方面,从基本概念到具体实践、从抽象的算法到具体的页面特效、从最简单的输入输出到最新的XML技术都进行了详细的阐述,并对每一个具体知识点都进行了详细的实例讲解。

图书前言

JavaScript是一种解释型的脚本语言,被大量地应用于网页中,用以实现和浏览用户的动态交互。目前,几乎所有的浏览器都可以很好地支持JavaScript。由于其可以及时地响应浏览者的操作,控制页面的行为表现,提升用户体验,因此JavaScript已经成为网页必不可少的组成部分。
  然而JavaScript易学难精。作为一种弱类型的脚本语言,其语法非常贴近于自然语言,容错性能也很强。用户即使对其一知半解,往往也可以通过向页面中插入某些代码来实现简单的特性,因此JavaScript非常容易上手。但是由于其应用领域的特点,牵涉的知识面非常广,如果需要按要求编写特定的脚本,就必须对此语言有着较深的了解。
  本书经过精心编写,目的在于给各种程度的JavaScript使用者提供一个提高的途径。笔者结合自己多年的JavaScript开发经验,为JavaScript程序员提供了从具体的JavaScript效果实例到JavaScript设计理念等不同层次的JavaScript知识。本书涉及的知识面广泛,是JavaScript程序员提高自己的程序设计水平、完善自己的知识结构、扩展自己的知识面的最佳参考。
本书的特点
  本书深入浅出地讲解了JavaScript各个方面的知识以及目前流行的JavaScript应用技术,如XML、VML和Ajax。每章均围绕具体的实例来进行讲解,避免了常见的程序设计类书籍的枯燥之感,同时也给初学者一些借鉴,说明了不同知识点可能的应用。
  JavaScript作为一种脚本语言,由于其应用领域的特点,导致其涵盖的知识面非常广且“零碎”。笔者结合自己长期的JavaScript开发经验,按应用的层次由浅入深安排,每章以一个JavaScript应用作为设计目标,将各个方面的知识融于其中,使读者在学习脚本的各种应用过程中得到提高,既学习了JavaScript知识,也积累了应用的经验。
  本书的特点主要体现在以下几个方面。
  q 本书的编排采用循序渐进的方式,适合初中级学者逐步掌握JavaScript语言的基础知识。各篇之间层次分明,适合不同程度的读者学习。
  q 各个知识点均有具体的例子作为诠释,代码中有着大量的注释,便于初学者阅读;同时,代码的执行效果有着详细的效果图,可以给读者以直观的印象。常见的程序设计类书籍常常由于其抽象的描述,使得读者虽然掌握了语法等知识点,但是却无法应用自如。通过阅读本书示例,读者可以积累程序设计的经验,从而达到事半功倍的学习效果。
  q 本书的内容非常详尽。这是本书和其他同类书籍最大的不同。由于JavaScript是一种基于对象的语言,很多时候的操作是通过某些对象进行的,这些部分的内容属于“知之为知之”。本书以微软公司的MSDN为依据,罗列出各个对象所有的属性、方法和事件等,并针对常用的内容加以详尽的解释,可以极大地提高读者对这些对象的掌握程度。同时,本书也适合熟练的JavaScript程序员作为语言参考手册使用。
  q 很多同类的JavaScript书籍仅仅停留在普通的特效应用上,这在Ajax等深层、大型应用逐渐流行的今天渐渐无法满足所需。本书深入JavaScript的机制,讲解了JavaScript作为面向对象语言的类和继承的应用,以及内容、样式与行为分离的脚本编写思想,利于大型脚本项目的开发。这在同类书籍中是非常罕见的。
本书的内容安排
  本书分为四篇,共20章,从JavaScript的输入/输出等入门知识讲起,再进一步以实例介绍JavaScript的条件判断和循环等语法知识与系统的内置对象,然后讲述了JavaScript在动态页面中各个方面的应用,以及脚本对DOM、CSS、ActiveX控件等的控制,最后针对目前逐渐流行的XML等技术进行了讲解。
  第一篇(第1~6章):JavaScript入门。
  本篇定位于完全没有程序设计基础的新手,以最基础的网页输入/输出等应用为入口,在实例中讲解JavaScript的基础语法,涵盖了变量、表达式、操作符、函数等程序设计概念;条件判断、分支和循环等程序循环控制;内置时间日期对象、字符串对象、数组对象和数学对象等基础对象的使用;页面输入/输出、事件绑定等交互操作。通过本篇的学习,读者能够读懂大多数JavaScript脚本,并进行简单的脚本功能编写。
  第二篇(第7~14章):JavaScript和页面的交互。
  本篇定位于对JavaScript语法有所掌握的初级程序员。按需要操作的页面对象的类型,依次讲述了JavaScript对Cookie、窗口和框架、表单、CSS、DOM和CSS滤镜的操作,同时详细讲解了正则等复杂工具的使用以及排序算法。此篇由浅入深,使读者对页面元素的控制逐渐深入,最后获得对页面内容和样式的完全控制,达到“随心所欲”的目的。通过本篇的学习,读者能够实现绝大多数的页面动态效果。
  第三篇(第15~18章):JavaScript高级操作。
  定位于对JavaScript的扩展。通过操作ActiveX控件,可以实现很多纯脚本无法达到的功能。本篇依次讲述了JavaScript对视频控件、XML、文件和数据库的操作。通过本篇的学习,读者的JavaScript能力不再局限于页面特效,而将进一步获得对系统较底层的控制。本篇最后还讲述了对象化的程序设计,以及如何实现JavaScript中的类和继承。
  第四篇(第19~20章):实例和框架。
  本篇的实例用来总结前面所学的知识,读者所做的实例越多,经验就会越丰富。计算机技术,特别是编程语言,是一种不断进步的技术。本篇讲述了目前最为流行的Ajax技术以及JSON等数据传输格式。此外介绍了常见的JQuery框架,读者可以通过本篇的学习,应用前面所学的基础知识。
  本书由浅入深,始终围绕着具体的例子进行讲解,全书共120多段实例,辅以详尽的注释,适合各种层次的读者逐步学习和完善自己的知识结构,同时在学习的过程中累积实际经验。
适合阅读本书的读者
  q 希望学习JavaScript的新手
  q 迫切希望提高个人JavaScript编程能力的初级程序员
  q 具备一定的理论知识但是缺乏实践经验的程序员
  q 希望了解大型项目结构化程序设计和对象封装技术的JavaScript程序员
  q 希望了解最新Ajax技术的程序员
  q 需要进行客户端控件开发的程序员
  q 需要一本快速查阅手册的高级程序员
本书作者
  本书主要由高宏编写,其他参与编写和资料整理的人员有高会东、王建超、邓薇、黄丽莉、吝晓宁、汪洋、白广元、蔡念光、陈辉、冯彬、刘长江、刘明、沙金、张士强、张洪福、多召英、贾旭、李宽、江宽、陈科、方成林、班晓娟、方中纯、刘兰军、郑雪峰。

编  者
2010年12月

上架指导

计算机\程序设计

作者简介

高宏 等编著:暂无简介

图书目录

丛书序
前言
第一篇  JavaScript入门
第1章  必须了解的JavaScript知识 1
1.1  认识JavaScript 1
1.1.1  什么是JavaScript 1
1.1.2  JavaScript的特点 1
1.2  JavaScript与Java的区别 2
1.2.1  基于对象和面向对象 2
1.2.2  解释和编译 3
1.2.3  强变量和弱变量 3
1.2.4  代码格式不同 3
1.2.5  嵌入方式不同 3
1.2.6  静态联编和动态联编 3
1.3  JavaScript程序运行开发环境 4
1.4  JavaScript的优点与局限性 4
1.5  小结 5
1.6  常见面试题分析 5
1.7  本章习题 5
第2章  第一个例子—向用户说“你好” 6
2.1  第一个例子 6
2.1.1  最简单的程序—“用户你好” 6
2.1.2  在HTML中插入JavaScript块 7
2.1.3  JavaScript代码书写规则 8
2.2  JavaScript基础知识—变量和常量 9
2.2.1  变量命名规则 9
2.2.2  数据类型 10
2.3  告诉用户当前时间 11
2.3.1  什么是内置对象 11
2.3.2  内置对象Date的方法 12
2.3.3  获取时间和日期 13
2.4  在Web页上输出 14
2.4.1  弹出警告框—alert 14
2.4.2  弹出确认“是/否”的对话框—confirm 14
2.4.3  输出到页面内容—document.write 15
2.5  改进版的“你好”程序 16
2.6  小结 17
2.7  常见面试题分析 17
2.8  本章习题 17
第3章  获取用户的输入 18
3.1  示例:让用户输入两个数字,然后输出相加的结果 18
3.2  JavaScript基础知识—操作符和表达式 19
3.2.1  什么叫表达式 19
3.2.2  什么叫操作符 19
3.2.3  什么是优先级 21
3.3  “一加一等于几?”变量类型转换 21
3.4  JavaScript基础知识—字符串初探 23
3.4.1  什么是字符串 23
3.4.2  字符串的书写与转义符 24
3.4.3  字符串操作 24
3.5  示例:让用户输入自己的名字,输出写给用户的情书 27
3.6  小结 29
3.7  常见面试题分析 29
3.8  本章习题 29
第4章  简单的表单操作 30
4.1  示例:确认表单必填项目完整性 30
4.2  JavaScript基础知识—函数 31
4.2.1  函数和变量作用域 31
4.2.2  函数的参数和返回值 34
4.2.3  什么是递归调用 35
4.3  在表单提交时调用检查函数—绑定事件到表单 37
4.3.1  什么是事件 37
4.3.2  如何绑定事件 39
4.4  发生了什么—获取事件的内容 40
4.5  表单元素的属性和方法 42
4.6  综合应用示例—更人性化的表单 44
4.7  小结 45
4.8  常见面试题分析 46
4.9  本章习题 46
第5章  小游戏—算24 47
5.1  示例:电脑帮你算24 47
5.2  JavaScript基础知识—条件判断 50
5.2.1  if语句 51
5.2.2  switch语句 52
5.2.3  不同类型数据的比较和逻辑操作 53
5.3  JavaScript基础知识—循环 54
5.3.1  for循环 54
5.3.2  while循环 56
5.3.3  break和continue 57
5.4  JavaScript基础知识—数组对象 57
5.4.1  如何引用数组对象 58
5.4.2  数组对象的属性和方法 59
5.5  内置eval函数和错误捕获机制 60
5.6  小结 62
5.7  常见面试题分析 63
5.8  本章习题 63
第6章  物理问题—炮弹的射程 64
6.1  示例:由初速度和仰角求射程 64
6.2  数学计算—内置对象Math的属性和方法 66
6.3  Math对象应用—科学计算器 67
6.4  随机函数和彩票游戏 71
6.5  小结 75
6.6  常见面试题分析 75
6.7  本章习题 76
第二篇  JavaScript和页面的交互
第7章  用Cookie在客户端保存信息 77
7.1  示例:用Cookie实现可以记住内容的表单 77
7.2  什么是Cookie 80
7.2.1  HTTP协议简介 80
7.2.2  Cookie存在的意义 81
7.2.3  Cookie的优点和限制 82
7.3  把输入框的内容保存在客户端—使用Cookie 83
7.3.1  Cookie的保存和读取 83
7.3.2  字符串的编码 84
7.4  Cookie的有效期、域和路径 86
7.4.1  Cookie的有效期和清除Cookie的方法 86
7.4.2  用Cookie实现记事贴 87
7.4.3  Cookie的域和路径及Cookie欺骗 88
7.5  小结 90
7.6  常见面试题分析 90
7.7  本章习题 91
第8章  操作窗口和框架 92
8.1  示例:模拟Live Messenger的振动闪屏功能 92
8.2  控制窗口—窗口对象的事件、属性和方法 94
8.2.1  获取窗口的改变—窗口对象的事件 94
8.2.2  控制窗口的行为—窗口对象的方法 97
8.3  打开一个新窗口—窗口的“open”方法详解 99
8.3.1  “open”方法的参数说明 99
8.3.2  检测弹窗动作是否被拦截 101
8.3.3  色彩选择器—“open”方法的应用 102
8.4  在网页中使用自定义的对话框 105
8.4.1  模拟Windows帮助效果—弹出式窗体的应用 106
8.4.2  模式对话框和非模式对话框 108
8.5  延时函数的使用 111
8.5.1  定时函数的设定和取消 111
8.5.2  综合应用—动态提示窗口 113
8.6  可以收起的分栏—改变框架的分隔比例 115
8.6.1  嵌套窗口的结构 115
8.6.2  可以收起和展开的侧边框架 116
8.6.3  跨窗口调用JavaScript脚本 118
8.7  小结 118
8.8  常见面试题分析 118
8.9  本章习题 119
第9章  控制你的表单—内容验证 120
9.1  示例:表单数据的有效性验证 120
9.2  用正则来判断复杂的文本规则 124
9.2.1  什么是正则 124
9.2.2  正则的优势 124
9.2.3  正则的格式和含义 127
9.2.4  用RegExp函数创建正则对象 129
9.2.5  示例代码中正则的详细解释 129
9.3  文本的编码和加密—正则和字符串操作 130
9.3.1  字符串的搜索、匹配 130
9.3.2  字符串的替换 132
9.4  正则对象的属性和方法 136
9.4.1  正则对象的属性 137
9.4.2  正则对象的方法 137
9.5  正则示例应用—UBB代码转换 139
9.6  小结 141
9.7  常见面试题分析 141
9.8  本章习题 142
第10章  控制表单—和用户的操作交互 143
10.1  示例:随用户操作而变化的表单 143
10.2  用户操作会激发的事件 146
10.2.1  onchange事件 146
10.2.2  鼠标和键盘事件 148
10.3  表单的状态变化 149
10.3.1  只读和不可用状态的改变 149
10.3.2  显示和隐藏 150
10.4  表单的内容变化 150
10.4.1  文本框内容 150
10.4.2  单选框和复选框的选取 151
10.4.3  下拉列表框的联动 151
10.5  小结 153
10.6  常见面试题分析 153
10.7  本章习题 153
第11章  复杂的跑马灯 154
11.1  示例:一个向左弹性滑入、向上滑出的跑马灯 154
11.2  用JavaScript控制内联CSS 158
11.2.1  CSS名称和JavaScript属性的对应 158
11.2.2  内联CSS样式的读取 164
11.2.3  内联CSS样式的设置和单位 166
11.2.4  示例:放大缩小文字 169
11.3  用JavaScript控制非内联CSS 171
11.3.1  样式表“styleSheet”对象 171
11.3.2  用样式表对象实现切换皮肤的功能 173
11.3.3  样式规则“rule”对象 175
11.4  确定页面元素的位置 178
11.4.1  CSS2.0的盒模型 178
11.4.2  绝对定位和相对定位 180
11.5  给HTML元素添加自定义的属性和方法 182
11.6  小结 184
11.7  常见面试题分析 184
11.8  本章习题 184
第12章  走近DOM—构造导航列表 185
12.1  示例:可自定义的导航列表 185
12.2  DOM—文档对象模型 190
12.2.1  DOM结构简述 191
12.2.2  获取浏览器信息—“navigator”对象 192
12.2.3  操作剪贴板—“clipboardData”对象 193
12.2.4  操作浏览器的历史记录—“history”对象 196
12.2.5  获取当前页面的URL—“location”对象 196
12.2.6  读取用户的屏幕分辨率—“screen”对象 197
12.3  使用DOM的“document”对象 198
12.3.1  “document”对象特有的属性 198
12.3.2  “document”对象特有的方法 200
12.3.3  执行打印、全选等命令—“execCommand”方法 203
12.4  插入和删除元素 208
12.4.1  在容器元素的末尾插入元素—“appendChild”方法 208
12.4.2  在指定的元素前插入元素—“insertBefore”方法 210
12.4.3  “appendChild”与“insertBefore”方法的其他运用 210
12.4.4  删除节点—“removeChild”方法 211
12.5  小结 211
12.6  常见面试题分析 211
12.7  本章习题 212
第13章  DOM应用—可排序的分页表格 213
13.1  示例:可以按不同列排序、支持分页的表格 213
13.2  表格对象的结构与动态改变表格 221
13.2.1  xHTML简介 221
13.2.2  表格布局和DIV布局 221
13.2.3  表格对象的结构 222
13.2.4  表格对象的方法和集合 223
13.2.5  文本节点的使用 224
13.3  排序算法 225
13.3.1  排序的基本概念 226
13.3.2  示例:冒泡排序 226
13.3.3  示例:快速排序 228
13.3.4  示例:插入排序 231
13.3.5  示例:希尔(Shell)排序 233
13.3.6  各种排序算法的比较和选择 235
13.4  绑定数据到表格 236
13.4.1  实现数据绑定的逻辑结构 236
13.4.2  示例:简单的数据绑定 237
13.4.3  向页面中添加数据源 238
13.4.4  将数据源绑定到HTML元素 241
13.4.5  示例:数据绑定模型与分页 243
13.4.6  数据绑定模型的事件 246
13.5  小结 247
13.6  常见面试题分析 247
13.7  本章习题 248
第14章  用JS操作CSS滤镜—构造一个自己的相册 249
14.1  示例:自动缩放、有预载功能的相册 249
14.2  JavaScript操作CSS界面滤镜 253
14.2.1  示例:载入透明的“PNG”文件—“AlphaImageLoader”滤镜 253
14.2.2  示例:插入渐变背景—“Gradient”滤镜 256
14.3  JavaScript操作CSS静态滤镜 259
14.3.1  示例:透明渐变效果—“Alpha”滤镜 259
14.3.2  灰度、X光、镜像效果—“BasicImage”滤镜 260
14.3.3  模糊效果—“Blur”滤镜 261
14.3.4  自定义透明色—“Chroma”滤镜 262
14.3.5  示例:混合不同的显示—“Compositor”滤镜 263
14.3.6  阴影效果—“DropShadow”滤镜和“Shadow”滤镜 265
14.3.7  示例:给对象添加光源—“Light”滤镜 266
14.3.8  示例:旋转对象—“Matrix”滤镜 269
14.3.9  其他静态滤镜效果 271
14.4  JavaScript操作CSS动态滤镜 273
14.4.1  CSS动态滤镜支持的通用属性和方法 273
14.4.2  示例:模拟开关门效果—“Barn”滤镜 274
14.4.3  网格推拉转换效果—“CheckerBoard”滤镜 275
14.4.4  示例:多功能的转换效果—“RevealTrans”滤镜 276
14.4.5  其他动态滤镜效果(一) 278
14.4.6  其他动态滤镜效果(二) 280
14.5  图片预载和尺寸控制 282
14.6  小结 283
14.7  常见面试题分析 283
14.8  本章习题 283
第三篇  JavaScript高级操作
第15章  JavaScript操作视频控件 285
15.1  示例:通用媒体播放器 285
15.2  “ActiveX”控件简介 288
15.2.1  “ActiveX”控件的意义 289
15.2.2  在HTML页面中使用“ActiveX”控件 290
15.3  JavaScript操作Windows Media Player播放器 292
15.3.1  在网页中插入“Windows Media Player”控件 293
15.3.2  “Windows Media Player”控件的脚本对象模型(一) 295
15.3.3  “Windows Media Player”控件的脚本对象模型(二) 300
15.3.4  “Windows Media Player”控件的脚本对象模型(三) 307
15.3.5  “Windows Media Player”控件的脚本对象模型(四) 312
15.3.6  “Firefox”浏览器对“Windows Media Player”控件的支持 315
15.4  使用Real Player控件播放流媒体文件 316
15.4.1  在Web页面中插入“Real Player”控件 316
15.4.2  “Real Player”控件支持的属性 316
15.4.3  “Real Player”控件支持的方法 317
15.5  小结 321
15.6  常见面试题分析 321
15.7  本章习题 321
第16章  JavaScript操作XML 322
16.1  示例:载入XML文件并实现查询或修改 322
16.2  初识XML 327
16.2.1  XML简介 327
16.2.2  XML文档的结构 328
16.2.3  在Web页面中使用XML 330
16.3  XML控件的文档对象 331
16.3.1  XML文档对象的属性和方法 331
16.3.2  使用XML文档对象对XML进行校验 334
16.3.3  异步载入远程XML文件 335
16.3.4  “documentElement”对象 338
16.4  XML控件的节点对象 339
16.4.1  XML控件的节点对象类型 339
16.4.2  XML元素节点的属性和方法 339
16.4.3  动态生成新的XML文档 341
16.4.4  移动XML元素在文档中的位置 345
16.4.5  利用XSL样式表转换XML 348
16.5  在XML文档中查找节点—“XPath” 350
16.5.1  在XML控件应用中使用“XPath” 350
16.5.2  “XPath”简介 351
16.5.3  “XPath”语法 351
16.5.4  “XPath”中的“轴”与运算符 353
16.6  小结 355
16.7  常见面试题分析 355
16.8  本章习题 356
第17章  JavaScript操作本地文件 357
17.1  示例:文件浏览器 357
17.2  FSO对象和浏览器安全性限制 363
17.3  文件系统对象 365
17.3.1  FSO对象的属性和遍历驱动器集合 365
17.3.2  FSO对象的方法(一) 367
17.3.3  FSO对象的方法(二) 370
17.4  文件、文件夹和文本流对象 373
17.4.1  文件对象的属性和方法 373
17.4.2  文件夹对象的属性和方法 378
17.4.3  文本流对象的属性和方法 379
17.5  FSO应用示例—文本加密与解密 380
17.6  小结 384
17.7  常见面试题分析 385
17.8  本章习题 385
第18章  面向对象编程—JavaScript中的类与继承 386
18.1  面向对象编程简介 386
18.1.1  传统编程方法的不足 386
18.1.2  面向对象的基本概念 387
18.1.3  面向对象编程的特征 388
18.1.4  面向对象编程的要素 388
18.2  JavaScript中的类 389
18.2.1  JavaScript中类的构造 389
18.2.2  JavaScript类的属性和方法 390
18.2.3  JavaScript类的原型—“prototype” 392
18.3  JavaScript的封装与继承 395
18.3.1  JavaScript的封装 395
18.3.2  JavaScript的继承 399
18.3.3  获取函数对象的调用参数 401
18.3.4  获取函数对象的上级函数 403
18.4  示例:构造一个菜单类 406
18.5  小结 413
18.6  常见面试题分析 413
18.7  本章习题 413
第四篇  实例和框架
第19章  JavaScript综合应用—模拟窗口 415
19.1  可拖动的模拟窗口 415
19.1.1  模拟窗口特效的功能目标设计 416
19.1.2  模拟窗口特效的HTML内容 417
19.1.3  模拟窗口特效所用的样式表内容 419
19.2  模拟窗口的自动构造 421
19.2.1  初始化脚本环境和通用的函数 421
19.2.2  模拟窗口特效中用到的通用函数 423
19.2.3  初始化模拟窗口对象 425
19.3  模拟窗口的自定义方法和事件 429
19.3.1  窗口的拖动与缩放效果 430
19.3.2  禁止选取—“onselectstart”事件 436
19.3.3  模拟窗口的自定义方法 437
19.3.4  自定义的定时器对象 444
19.4  小结 446
第20章  使用第三方框架(程序库) 447
20.1  使用Ajax框架 447
20.1.1  使用一个微型的框架Sack 447
20.1.2  使用一个有用的表单验证框架checkForm 460
20.1.3  相关资源 474
20.2  使用jQuery框架 476
20.2.1  jQuery框架介绍 476
20.2.2  jQuery框架示例 476
20.2.3  jQuery的插件介绍—Thickbox 479
20.2.4  相关资源 480
20.3  Prototype框架和其他更多的框架介绍 480
20.4  小结 481
20.5  常见面试题分析 481
20.6  本章习题 482

教学资源推荐
作者: 朱恺 吉逸 方宁生 编著
作者: 杨佩理 周洪斌
作者: 黄建文 章鸣嬛 编著 孙德文 主审
作者: [美]马克 N.霍伦斯坦(Mark N. Horenstein)著
参考读物推荐
作者: [美]安德尔?杰韦德(Adeel Javed)著
作者: 麦思博(msup) 编
作者: (美)Norman Matloff 著