目标读者

本书适合想深入学习jQueryWeb开发人员、全栈工程师、架构师jQuery互联网上最流行的JavaScript框架。本书目标是希望读者成为Web高级开发人员,无论起点如何。本书深入介绍了整个jQuery框架此外还专门深入介绍了插件编程以及一些扩展开发工具和框架,比如BowerQUnit,当然还有经典的开发实战原则。每个API方法都使用了简明扼要的语法块来描述参数和返回值        

jQuery实战》(第三版)涵盖了从简单入门如何在网页中引入jQuery高级开发的内容,比如Promises实现方式,以及如何开发jQuery插件。为便于大家理解知识,本书包含了大量的实例代码、三个插件及三个例子项目。本书也包含了试验网页(Lab Pages这些有趣网页开发可以让大家在实战开发快速学习jQuery方法的差别,不需要编写大量的代码。        

阅读本书需要大家提前掌握HTMLCSSJavaScript的基础编程知识。jQuery以前的知识不是必须的,但是可以帮助大家快速理解掌握新的概念。        

路线图        

本书分为三个部分:jQuery基础知识、jQuery核心知识(包含了所有的特性)及高级主题。        

1章主要介绍了jQuery框架背后的原理以及原则;讨论了jQuery框架的本质,以及它要解决的问题,为什么要在Web项目中使用jQuery框架。        

2章讲述了使用选择器查找DOM元素,以及如何创建自定义选择器;也介绍了jQuery集合(以及jQuery对象)等词汇,即jQuery方法返回的对象。它包含使用jQuery库操作的元素。        

3章扩展了第2章的内容,涉及如何通过前一个元素创建新的选择元素;也介绍了如何通过jQuery创建新的选择。        

4章关注如何使用jQuery提供操作特性和属性的方法使用,以及这些方法的差别,此外,还解释了如何在一个或者多个DOM元素上存储自定义数据。        

5章介绍了如何使用class名字操作元素,如何克隆、设置DOM元素,如何通过添加、移动和替换来修改DOM树。        

6章介绍了各种不同的事件模型,以及浏览器如何建立事件处理器来响应事件发生的处理工作,之后介绍了jQuery如何支持这种机制,避免开发人员陷入浏览器兼容性的大坑中。此外,本章还介绍了两个重要的主题事件委托(event delegation)和事件冒泡(event bubbling)。        

7章与前面几章的内容不同,本章的目标主要是带领大家开发一个Web项目:DVD光盘定位器(DVD discs locator),可以在这里把所学的知识应用其中,并实战练习。        

8章介绍了显示和隐藏元素的方法,以及如何创建动画效果,实现连续运行效果的函数队列,以及一些常见的函数。        

9章主要介绍了工具函数,这些函数使用了jQuery命名空间,但是不直接操作DOM元素。        

10章的内容涵盖了最近几年最重要的概念Ajax。我们来学习jQuery如何简化Ajax编程。为了避免程序员掉入坑中,jQuery简化了最常见的Ajax交互类型(比如返回JSON对象)。        

11章设置了新的挑战。要解决许多开发者面对的真实问题:创建一个联系表单。项目包括创建一个可以工作的表单页面,而不需要通过完全刷新加载页面来告诉用户是否成功或者失败。        

12章是第三部分的第一章,从本章开始我们进入了高级主题,大部分的内容并非与核心库相关。本章讨论了如何通过创建插件来扩展jQuery功能。插件主要分为两大类:方法和工具函数。本章详细讲解了这些内容。        

13章介绍了如何通过jQuery Promises避免臭名昭著的回调灾难(callback hell)问题。当然,众所周知,这是一个略有争议的话题已经持续了很多年。        

14介绍了测试:什么是测试及测试为什么如此重要。首先会关注一种特定类型的测试:单元测试(unit testing)。然后会介绍非常流行的框架QUnit,它使用了一些jQuery项目(jQueryjQuery UIjQuery Mobile)来测试代码。        

15章是本书的最后一章,先介绍了jQuery开发与性能优化的技巧,然后扩展到几个与jQuery相关的工具、框架和模式,它们可以帮助我们创建快速、强壮和优美的JavaScript代码。特别强调的是,本章会讲解如何在模块中组织代码、如何使用RequireJS加载代码,以及如何使用Bower来管理前端依赖。最后会通过Backbone.js向大家揭秘jQuery如何开发单页面Web应用程序。        

最后,本书末尾提供了专门的附录来列举JavaScript的概念,比如函数上下文和闭包——如何最高效地使用jQuery开发网页——为不熟悉或者想重新温习这些概念的读者        

代码规范和下载        

本书使用固定宽度的字体作为参考代码的专用字体。这些列举的代码主要是为了方便理解关键的知识点,有些内容使用编号列也是为了对代码进行补充说明,通过换行或者缩进也是为了让排版充分使用页面空间。        

本书中的所有代码都可以在GitHub上下载,地址是:https://github.com/AurelioDeRosa/ jquery-in-action。当然也可以从出版社的网站www.manning.com/derosa/www.manning. com/jquery-in-action-third-edition下载        

软件需求        

本书的例子代码都在每章的一个文件夹中,可以方便地在Apache HTTP Server中托管运行。除了第7章、第10章的代码及其他章节的少量代码,其他代码都可以直接在浏览器中运行调试。第10章的代码运行配置环境有点复杂,不仅需要与Apache后台交互,还需要配置PHP环境(如果使用的是其他开发框架,比如Node.jsJSP或者ASP.NET,一样可以使用jQuery框架,不限制后台框架,完全兼容)。        

所有的例子都已在各种不同的浏览器中测试完成,包括IEFirefoxSafariOperaChrome


作者介绍:

                   

Bear Bibeault:

超过30年的代码编写经验                        
曾经就职于DEC,                        
专注于Web开发                        
参加过美国海军陆战队。                        
喜欢骑雅马哈摩托车兜风


                   

Yehuda Katz:


过去几年参与过许多开源项目。                        
JQuery开源项目的核心成员,                        
他还参与了Merb项目。


                   

Aurelio De Rosa:

全栈Web开发工程师                        
拥有WAMP stack、HTML5, CSS3, Sass, JavaScript, and PHP超过5年的专业开发经验。                        
JQuery和JoindIn团队的成员                        
JavaScript 和 HTML5领域的专家。                        
他同样对Web安全、访问性、性能和SEO有深入研究。


                   

徐雷 Frank Xu Lei:

微软中国特邀讲师、微软美国Channel9首位中国讲师                        
获得吉林大学计算机学士学位,上海交通大学硕士学位                        
国外经典《WCF技术内幕》《WCF服务编程》第34版《ASP.NET MVC4 Web编程》《JQuery实战》第3版《MongoDB实战》第2版译者                        
受邀为微软中国、盛大网络、玫琳凯中国、世界500强约翰迪尔、一嗨租车、沪江网、中国东方航空、美国IGT、Citibank花旗银行、美国国家仪器NI、达丰集团、中国体彩集团等中外名企授课。                        
苍老师忠实粉丝,授课幽默风趣,追求“德艺双馨”。