Dori Smith,世界知名的Web程序员和设计师,从事软件开发已有20多年。她是Web标准项目(WaSP)指导委员会委员,并发起成立了世界性的女性技术社区Wise-Women Web。
Tom Negrino,蜚声全球的技术作家,长期主持Macworld和许多其他技术杂志的专栏。自1995年开始,与Dori Smith合作著书,向初学者介绍Web,目前已著有数十本书。
第1章 了解JavaScript 1
1.1 JavaScript是什么 1
1.2 JavaScript不是Java 2
1.3 JavaScript的起源 3
1.4 JavaScript可以做什么 3
1.5 JavaScript不能做什么 4
1.6 JavaScript及其他 4
1.6.1 jQuery是什么 4
1.6.2 Ajax是什么 4
1.7 组合式语言 6
1.7.1 对象 6
1.7.2 属性 6
1.7.3 方法 7
1.7.4 将对象、属性和方法组合在一起 7
1.7.5 DOM简介 7
1.8 处理事件 8
1.9 值和变量 8
1.9.1 操作符 9
1.9.2 赋值和比较 9
1.9.3 比较 10
1.10 编写对JavaScript友好的HTML 10
1.10.1 结构、表现和行为 11
1.10.2 div和span 11
1.10.3 class和id 11
1.11 要使用什么工具 12
第2章 开始 14
2.1 将脚本放在哪里 14
2.2 关于函数 15
2.3 使用外部脚本 16
2.4 在脚本中添加注释 17
2.5 向用户发出警告 18
2.6 确认用户的选择 20
2.7 提示用户 21
2.8 用链接对用户进行重定向 23
2.9 使用JavaScript改进链接 25
2.10 使用多级条件 28
2.11 处理错误 31
第3章 第一个Web应用程序 33
3.1 用循环进行重复操作 33
3.2 将值传递给函数 38
3.3 探测对象 39
3.4 处理数组 41
3.5 处理有返回值的函数 42
3.6 更新数组 43
3.7 使用do/while循环 45
3.8 以多种方式调用脚本 46
3.9 组合使用JavaScript和CSS 48
3.10 检查状态 51
3.11 处理字符串数组 56
第4章 处理图像 60
4.1 创建翻转器 60
4.2 创建更有效的翻转器 62
4.3 构建三状态翻转器 66
4.4 由链接触发翻转器 67
4.5 让多个链接触发一个翻转器 69
4.6 处理多个翻转器 72
4.7 创建循环的广告条 75
4.8 在循环广告条中添加链接 77
4.9 建立循环式幻灯片 79
4.10 显示随机图像 81
4.11 随机开始循环显示图像 82
第5章 窗口与框架 84
5.1 防止页面显示在框架中 84
5.2 设置目标 85
5.3 用JavaScript加载iframe 87
5.4 iframe的使用 88
5.5 创建动态iframe 90
5.6 在文档之间共享函数 91
5.7 打开新窗口 93
5.8 为窗口加载不同的内容 96
第6章 表单处理 98
6.1 选择并转移导航菜单 99
6.2 动态地改变菜单 102
6.3 建立必须填写的字段 104
6.4 根据其他字段对字段进行检查 108
6.5 标识有问题的字段 110
6.6 准备进行表单验证 112
6.7 处理单选按钮 116
6.8 用一个字段设置另一个字段 119
6.9 检验Zip编码 121
6.10 验证电子邮件地址 125
第7章 表单和正则表达式 130
7.1 用正则表达式验证电子邮件地址 130
7.2 验证文件名 135
7.3 提取字符串 137
7.4 格式化字符串 139
7.5 对字符串进行格式化和排序 142
7.6 对字符串进行格式化和验证 143
7.7 使用正则表达式替换元素 146
第8章 处理事件 148
8.1 处理窗口事件 148
8.1.1 onload事件 148
8.1.2 onunload事件 151
8.1.3 onbeforeunload事件 151
8.1.4 onresize事件 153
8.1.5 onmove事件 153
8.1.6 onabort事件 153
8.1.7 onerror事件 153
8.1.8 onfocus事件和onblur事件 153
8.1.9 onscroll事件 153
8.1.10 onDOMContentLoaded事件 153
8.2 处理鼠标事件 153
8.2.1 onmousedown事件 154
8.2.2 onmouseup事件 156
8.2.3 onmousemove事件 156
8.2.4 onmouseover事件 159
8.2.5 onmouseout事件 159
8.2.6 ondblclick事件 159
8.2.7 onclick事件 160
8.3 表单事件处理 160
8.3.1 onsubmit事件 160
8.3.2 onreset事件 161
8.3.3 onchange事件 161
8.3.4 onselect事件 161
8.3.5 onclick事件 161
8.3.6 onblur事件 161
8.3.7 onfocus事件 163
8.4 键事件处理 164
8.4.1 onkeydown事件 164
8.4.2 onkeyup事件 167
8.4.3 onkeypress事件 167
8.5 高级事件处理 167
8.5.1 addEventListener方法 167
8.5.2 removeEventListener方法 169
8.5.3 dispatchEvent方法 169
8.5.4 initEvent方法 169
8.5.5 stopPropagation方法 169
8.5.6 preventDefault方法 169
第9章 JavaScript和cookie 171
9.1 建立第一个cookie 171
9.2 读取cookie 174
9.3 显示cookie 175
9.4 使用cookie作为计数器 176
9.5 删除cookie 178
9.6 处理多个cookie 180
9.7 显示新内容提醒信息 182
第10章 对象和DOM 186
10.1 关于节点操纵 186
10.1.1 DOM 2和W3C 186
10.1.2 DOM 2术语 186
10.1.3 DOM 3 187
10.2 添加节点 187
10.3 删除节点 189
10.4 删除特定的节点 191
10.5 插入节点 194
10.6 替换节点 196
10.7 用对象字面量编写代码 199
第11章 建立动态页面 204
11.1 在网页上显示当前日期 204
11.2 处理周中的日期 206
11.3 根据时间对消息进行定制 207
11.4 根据时区显示日期 208
11.5 把24小时制转换为12小时制 211
11.6 创建倒数计数器 214
11.7 隐藏和显示层 217
11.8 移动文档中的对象 220
11.9 日期方法 221
第12章 JavaScript应用示例 223
12.1 使用可折叠菜单 223
12.2 添加下拉菜单 226
12.3 改进下拉菜单 229
12.4 带说明的幻灯片 232
12.5 一个娱乐姓名生成器 235
12.6 柱状图生成器 239
12.7 样式表切换器 246
第13章 Ajax简介 254
13.1 Ajax的定义 254
13.2 读取服务器数据 256
13.3 解析服务器数据 263
13.4 刷新服务器数据 268
13.5 从服务器获得数据 270
13.6 用Ajax预览链接 273
13.7 自动补全表单字段 276
13.8 检查文件是否存在 281
第14章 工具包、框架和库 285
14.1 添加jQuery 286
14.2 使用jQuery更新页面 288
14.3 使用jQuery交互 288
14.4 交互与更新 291
14.5 条纹表格 292
14.6 表格排序 296
第15章 用jQuery设计页面 301
15.1 突出显示新元素 301
15.2 创建可折叠菜单 303
15.3 创建更漂亮的对话框 306
15.4 自动完成字段 309
15.5 添加可排序选项卡 311
15.6 使用复选框作为按钮 313
15.7 在页面中添加日历 316
15.8 使用ThemeRoller定制外观 320
第16章 基于jQuery的应用 323
16.1 以jQuery为基础 323
16.1.1 Ajax、JSON和jQuery 323
16.1.2 jQuery插件 324
16.2 拖放元素 324
16.3 使用jQuery处理外部数据 327
16.4 使用jQuery插件 329
16.5 添加jQuery音频插件 333
第17章 为移动设备编写脚本 335
17.1 改变方向 335
17.2 处理触摸事件 342
17.3 针对不同设备编写特定代码 344
17.4 定位设备 346
第18章 bookmarklet 349
18.1 第一个bookmarklet 349
18.2 改变页面的背景颜色 353
18.3 改变页面样式 354
18.4 查询单词 355
18.5 查看图像 357
18.6 显示ISO Latin字符 359
18.7 将RGB值转换为十六进制 360
18.8 对值进行转换 362
18.9 bookmarklet计算器 362
18.10 缩短URL 364
18.11 检验页面 364
18.12 通过电子邮件发送页面 365
18.13 改变页面大小 366
附录A JavaScript的版本演化和参考资料 368
附录B JavaScript保留字 386
附录C CSS参考 389
附录D 其他学习资源 398
欢迎使用JavaScript!使用这种容易上手的程序设计语言,可以给网页增色,使网页更好用。本书是一本轻松的JavaScript入门教程,所以即使不是计算机高手,你也可以由此很快学会脚本编写。任何时候你都不需要借助工具包。就像我们的一位朋友说的:“我们已经够疯狂了,所以你没有必要这样做啦!”
读者对象
我们猜想既然你有兴趣学习JavaScript,那么肯定有创建HTML页面和Web站点的经验,而且希望更进一步,使站点更具交互性。学习本书并不要求你了解任何编程或脚本编程的知识,也不要求你是HTML专家(当然,如果你是HTML专家也无妨)。我们只假设你具备构建网页的基本知识,而且熟悉常用的HTML标签,比如链接、图像和表单。同样,我们也希望你了解现代网页另一个主要构件块——CSS的基础知识。
在某些章题为“目前需要了解的HTML知识”的表中,我们对HTML做了一些解释。并非每章都有这部分内容,只有在我们认为你需要速查的地方才会提供。有了这些HTML信息,你就不需要在阅读本书的同时,再去翻另一本书或者打开相关网页查找HTML属性的语法了。
如果你对编程有所了解,应该会注意到本书介绍JavaScript的方式与其他图书的风格很不一样。本书并不深入介绍JavaScript的语法和结构,而且本书也不是一本深入而全面的语言参考书(当然附录A中提供了一些很有价值的内容)。这方面市面上已经有不少很好的书,附录D中列了出来。本书和这些书之间的差异是,本书并不拘泥于形式,而是集中地演示如何用JavaScript完成一些有用的任务,不赘述大量的额外信息。
在本书的前几版中,我们增加了对Ajax和jQuery的介绍。这种技术结合使用了JavaScript和其他常用的Web技术为网页增加交互性,并且改善了Web站点的用户体验。在这个版本中,我们添加了更多示例和技术介绍,使用流行的jQuery框架向网站轻松添加有用的功能。
如何使用本书
本书采用一些特殊的版式,帮助你更轻松地学习和理解JavaScript。
组成本书的大部分内容由分步说明构成。我们在书中以特殊的字体样式表示HTML或JavaScript代码,比如:
window.onload = initLinks;
你还会注意到,HTML和JavaScript代码都显示为小写。这么做是因为,这个版本中的所有脚本都符合W3C(World Wide Web Consortium,万维网联盟)的HTML5标准。当在JavaScript中看到引号时,总是直引号('或"),而不是弯引号(‘或“)。弯引号会使JavaScript失效,在编写脚本时应该避免使用。
在与分步说明对应的脚本中,我们以粗体突出显示脚本中正在讨论的部分,这样你就能够马上找到我们正在讨论的代码。我们还常常在Web浏览器窗口的屏幕图中以灰色底纹突出显示其中某些重要的部分。
因为图书的页面比计算机屏幕窄,所以一些JavaScript代码行在页面上排不开。出现这种情况时,我们将代码行分为多行,在接续行前面使用箭头→表示这是续行,并且将续行缩进,如下所示:
dtString = "Hey, just what are you
?doing up so late?";
关于浏览器
从第6版起有一个大的变化:我们不再支持那些版本非常老的浏览器或者那些在支持Web标准方面做得很差的浏览器。我们发现,几乎所有Web用户都升级到了现代浏览器,它们充分地支持公认的Web标准(比如HTML、CSS2和DOM)。这包括IE 9或更高版本,Firefox、Safari和Chrome的所有版本,以及Opera 7或更高版本。
我们在几种操作系统上的多个浏览器中测试了脚本,这些操作系统包括Windows(主要是Windows 7,有少数情况是Windows 8,不再支持Windows XP和Vista)、OS X(10.8.5或更高版本)和Ubuntu Linux(只在Ubuntu的默认浏览器Firefox中测试了脚本)。
我们使用最主流的浏览器——微软Windows版本的IE——虚拟测试了本书中的所有内容(使用了IE 9、IE 10和IE 11)。这一版,我们还增加了针对Mac和Windows平台上持续更新的谷歌Chrome的测试。我们还用Mac和Windows平台上最新版本的Firefox(每几周就更新一次,本书使用的最新版本为29)对脚本进行了测试。此外,还使用Mac平台上的Safari 6和7进行了测试。这意味着这些脚本对于从WebKit引擎衍生出来的任何浏览器都可以正常使用,对基于KHTML(Safari最开始使用的开源呈现引擎)的浏览器(比如Linux浏览器Konqueror)也可以正常使用。WebKit也是移动操作系统浏览器核心之一,比如苹果的iOS、谷歌的Android、亚马逊的Kindle Fire平板电脑,以及黑莓的Blackberry 10。对于移动设备,我们主要将脚本在iPhone和iPad上面进行了测试。
不必输入代码
一些JavaScript图书只在书中印刷出脚本代码,你在实践时必须自己输入代码。我们认为这种方式已经过时了。作者们不得不完成这些艰苦的输入工作,但是你不必重复这些劳动。我们为本书提供了一个配套Web站点,其中包含本书中的所有脚本,你可以将这些脚本复制并粘贴到自己的网页中。如果我们在书中发现了任何错误,也会在这里更正。这个配套站点的网址是www.javascriptworld.com。
如果由于某种原因你打算输入某些脚本示例,那么可能会发现这些示例似乎不起作用,这是因为你没有这些示例所用的支持文件。例如,在图像上实现屏幕效果的示例中,需要图像文件。但请放心,这些文件都放在本书的Web站点上了,而且打包好了供你下载。你找到的可下载文件包含所有脚本、HTML文件、CSS文件以及用到的所有媒体文件。如果你遇到任何问题,可以查看配套Web站点上的FAQ(常见问题)。
如果阅读了FAQ,而你的问题还没有解决,可以通过js9@javascriptworld.com给我们发邮件。很抱歉地说一声,因为收到的邮件太多,所以我们不可能也不会回复那些把本书问题发送到我们个人邮箱的邮件。但是,我们可以保证发送到js9@javascriptworld.com的邮件会得到答复。
当然,自己输入代码可能会帮你更彻底地理解JavaScript,那么但做无妨!
开始吧
JavaScript最好的一点是它很容易用一个简单的脚本在网页上实现很酷的效果,然后根据需要逐渐添加更复杂的素材。你不必等到学完整本书,就可以开始改进自己的网页。等到你看完本书的时候,将能用Ajax和jQuery给站点添加高级的交互效果了。
当然,千里之行,始于足下。欢迎光临,请勿将手伸出窗外,照相时请不要用闪光灯。探索JavaScript的旅程已经开始。
这本书就像是我的老朋友,陪伴我度过了从一个对代码一窍不通的门外汉到能写出一些小功能的转变过程。我尤其喜欢它那种循序渐进的讲解方式,从最基本的概念,比如变量、数据类型,到稍微复杂一些的函数、对象,再到后来深入到 DOM 操作和事件处理,每一步都走得很扎实。而且,书中的例子都非常贴合实际,读起来一点都不枯燥。我记得有一次,我遇到了一个棘手的异步问题,翻遍了书的相应章节,结合书中的例子,一点点地调试,最终找到了解决方案。那种豁然开朗的感觉,真的太棒了!这本书不只是告诉你“怎么做”,更会让你明白“为什么这么做”,这对于建立扎实的编程思维至关重要。即使我现在已经能独立开发一些小项目了,偶尔还是会翻开这本书,回顾一些细节,总能发现新的理解。它就像一座宝藏,每次挖掘都能有新的收获。我强烈推荐给所有正在学习 JavaScript 的朋友,无论是初学者还是希望巩固基础的开发者,都能从中受益匪浅。
评分我必须说,这本书绝对是我学习 JavaScript 过程中的“救命稻草”。作为一个完全零基础的学习者,我尝试过很多网上的教程,但总是感觉抓不住重点,或者理解得模模糊糊。直到我拿到了这本书,我才找到了方向。它不仅讲解了 JavaScript 的语法,更重要的是,它教会了我如何去思考问题,如何用 JavaScript 来解决实际的网页交互问题。书中的“对象”和“原型链”的讲解,简直是我的福音。我之前对这些概念一直感到很困惑,读完这本书之后,我终于能够理清思路,理解它们的工作原理。而且,这本书还介绍了许多实用的技巧和最佳实践,让我少走了很多弯路。比如,关于如何编写可维护的代码,以及如何调试 JavaScript 程序,这些都是书里非常宝贵的内容。我每次遇到问题,都会先翻翻这本书,总能找到相关的提示和解决方案。它让我觉得学习 JavaScript 并没有那么难,只要有好的引导,每个人都能掌握。
评分对于我这个自学编程的人来说,找到一本真正能够引导我入门的书非常关键。这本书在这方面做得非常出色。它没有一开始就抛出大量复杂的概念,而是从最最基础的部分开始,用非常易懂的语言解释了 JavaScript 是什么,它能做什么,以及我们该如何开始编写第一个程序。书中的每一个代码片段都经过了精心的设计,能够清晰地展示出所讲解的概念。我印象特别深刻的是关于作用域的讲解,一开始我对这个概念有点模糊,但书中的图示和对比分析,让我一下子就明白了全局作用域、函数作用域以及块级作用域的区别。而且,它还会穿插一些小练习,让我边学边练,巩固记忆。每次完成一个小练习,都会有一种小小的成就感,这对于保持学习的动力非常有帮助。这本书的排版也很舒服,字体大小适中,代码高亮也很清晰,阅读体验非常好。我感觉我不是在读一本枯燥的技术书,而是在和一位经验丰富的老师在交流。
评分这本书给了我一种非常系统和全面的 JavaScript 学习体验。它不像一些教程那样只关注某一个点,而是从头到尾,把 JavaScript 的核心知识点都梳理了一遍。我特别欣赏它的逻辑结构,每学习一个新概念,它都会将它与之前学过的知识联系起来,形成一个完整的知识体系。这一点对于理解 JavaScript 的运行机制非常有帮助。书中的“闭包”和“this 指向”的讲解,可以说是经典中的经典。我之前对这两个概念一直感到很头疼,但是通过书中深入浅出的讲解和大量的代码示例,我终于能够彻底理解它们了。而且,这本书还触及了一些更高级的主题,比如事件循环和异步编程,这些都是现代 JavaScript 开发中不可或缺的部分。虽然一开始读起来会有些挑战,但这本书提供了清晰的解释和逐步深入的分析,让我能够一点点地掌握这些复杂的技术。总而言之,这是一本能够帮助你建立起扎实 JavaScript 基础的绝佳教材。
评分这本书在我对 JavaScript 感到迷茫的时候,就像一盏明灯,指引我前进的方向。我最喜欢它的地方在于,它不是单纯地堆砌语法规则,而是非常注重“为什么”和“如何用”。它会从根本上解释 JavaScript 的设计理念,以及这些设计理念如何体现在具体的语法和特性上。这让我能够更深入地理解 JavaScript,而不仅仅是死记硬背。书中的“数组方法”和“字符串方法”的讲解,非常实用,让我能够更高效地进行数据处理。而且,这本书还强调了编写高质量代码的重要性,比如如何命名变量,如何组织代码结构等等,这些细节虽然看似微小,但却对日后的开发效率和项目维护有着至关重要的影响。我感觉这本书不仅仅是在教我一门编程语言,更是在传授一种编程的思维方式和工程素养。每一次阅读,都能让我对 JavaScript 有新的认识,也让我对自己的编程能力更有信心。
评分学校让买的,自己也看看吧
评分《JavaScript基础教程(第9版)》是已被奉为经典的JavaScript入门书,以易学便查、图文并茂、循序渐进和善于用常见任务讲解语言知识而著称,讲述JavaScript编程的必知必会知识的同时,兼顾了DOM、XML、Ajax等重要的相关技术内容。有很多Ajax设计示例和现代编程技巧,以YUI为例讲述了如何高效运用JavaScript库,并在主流浏览器的新版本中测试了全书示例。通过本书,你可以轻松而迅速地掌握JavaScript Web开发的基本技能,并掌握Web开发的实践,领悟其中真谛。全新一版更是增加了许多关于使用框架和库(如jQuery)以及现代编码技术的信息。
评分比较经典,打基础比任何事情都重要
评分很好,就是好像太基础了
评分学JS的话还是最好参考一下这本,国内实在找不到什么好的书。
评分挺好的,入门的好书
评分过于基础,没有对机制的扩展,只说了怎么做,没有解释其中最基础的原理或者一笔带过,那些才是想学的,不然网上随便搜搜有什么区别
评分还不错哦,但是还是根据自己的情况去选择书。先看看吧不行在买一些
评分不咋样,缺页了,懒得换了,
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.coffeedeals.club All Rights Reserved. 静流书站 版权所有