jakchen 前端工程师

jQuery 介绍

2018-01-03
jakchen

JavaScript 自身存在的弊端:

  1. 复杂的文档对象模型(DOM)
  2. 不一致的浏览器实现
  3. 便捷的开发、调试工具的缺乏。

jQuery 是一个轻量级的JS库,拥有:

  • 强大的选择器;
  • 出色的 DOM 操作;
  • 可靠的事件处理;
  • 完善的兼容性;
  • 链式操作等。

jQuery 简介

jQuery 是一个有John Resig 创建于2006年1月的开源项目。

现在的 jQuery 团队主要包括

  • 核心库
  • UI
  • 插件
  • jQuery Mobile

jQuery 凭借简洁的语法和跨平台的兼容性,极大地简化了 JavaScript 开发人员遍历 HTML 文档、操作 DOM 、处理事件、执行动画和开发 Ajax 操作。

jQuery 优势

1.轻量级

JQuery非常轻巧,采用 UglifyJS(https://github.com/mishoo/UglifyJS)压缩后,大小不到30KB左右。

2.强大的选择器

JQuery允许开发者使用从CSS1到CSS3几乎所有的选择器,以及JQuery独创的高级而且复杂的选择器,另外还可以加入插件使其支持XPath选择器,甚至开发者可以编写属于自己的选择器。由于JQuery支持选择器这一特性,因此有一定CSS经验的开发人员可以很容易的切入到JQuery的学习中来。

详细介绍:《锋利的jQuery(第二版)-第2章》

3.出色的DOM操作的封装

JQuery封装了大量常用的DOM操作,使开发者在编写DOM操作相关程序的时候能够得心应手。JQuery轻松地完成各种原本非常复杂的操作,让JavaScript新手也能写出出色的程序。

详细介绍:《锋利的jQuery(第二版)-第3章》

4.可靠的事件处理机制

JQuery的事件处理机制吸收了JavaScript专家Dean Edwards编写的事件处理函数的精华,使得 JQuery在处理事件绑定的时候相当可靠。在预留退路、循序渐进以及非入侵式编程思想方面,JQuery也做得非常不错。

详细介绍:《锋利的jQuery(第二版)-第4章》

5.完善的Ajax

JQuery将所有的Ajax操作封装到一个函数$.ajax()里,使得开发者处理Ajax的时候能够专心处理业务逻辑而无需关心复杂的浏览器兼容性和XMLHttpRequest对象的创建和使用的问题。

详细介绍:《锋利的jQuery(第二版)-第6章》

6.不污染顶级变量

JQuery只建立一个名为JQuery的对象,其所有的函数方法都在这个对象之下。其别名$也可以随时交流控制权,绝对不会污染其他的对象。该特性是JQuery可以与其他JavaScript库共存,在项目中放心地引用而不需要考虑到后期的冲突。

7.出色的浏览器兼容性

作为一个流行的JavaScript库,浏览器的兼容性是必须具备的条件之一。JQuery能够在IE6.0+,FF 3.6+,Safari 5.0+和Opera和 Chrome 下正常运行。JQuery同时修复了一些浏览器之间的的差异,使开发者不必在开展项目前建立浏览器兼容库。

8.链式操作方式

JQuery中最有特色的莫过于它的链式操作方式——即对发生在同一个JQuery对象上的一组动作,可以直接接连写无需要重复获取对象。这一特点使得JQuery的代码无比优雅。

代码风格详细介绍:《锋利的jQuery(第二版)-1.3.3小节》

9.隐式迭代

当用JQuery找到带有“.myClass”类的全部元素,然后隐藏他们时。无需循环遍历每一个返回的元素。相反,JQuery里的方法都被设计成自动操作的对象集合,而不是单独的对象,这使得大量的循环结构变得不再必要,从而大幅度地减少代码量。

10.行为层与结构层的分离

开发者可以使用选择器选中元素,然后直接给元素添加事件。这种将行为层与结构层完全分离的思想,可以使JQuery开发人员和HTML或其他页面开发人员各司其职,摆脱过去开发冲突或个人单干的开发模式。同时,后期维护也非常方便,不需要在HTML代码中寻找某些函数和重复修改HTML代码。

11.丰富的插件支持

JQuery的易扩展性,吸引了来自全球开发者来编写JQuery的扩展插件。目前已经有超过几百种官方插件支持,而且还不断有新插件面试。

详细介绍:《锋利的jQuery(第二版)-第7章》

12.完善的文档

JQuery的文档非常丰富,不管是英文文档,还是中文文档。

现阶段多为英文文档,中文文档相对较少。很多热爱JQuery的团队都在努力完善JQuery中文文档,例如JQuery的中文API。

13.开源

JQuery是一个开源的产品,任何人都可以自由地使用并提出修改意见。




参考书籍:《锋利的jQuery(第2版)》


Similar Posts

Comments