目录                                                                                    

      Jquery(以下简称JQ)的知识体系由三个部分组成,JQ源码,JQ框架,JQ插件库。

      其中JQ源码对于提高JavaScript(以下简称JS)水平具有很大的帮助,而且对JQ框架的理解也会上升一个档次。但是在阅读源码之前希望有两个前提,第一,JS语言基础较好,第二,熟练掌握JQ框架(实践和理论),所以首先掌握JQ框架。

     JQ框架知识点由以下六个部分组成。

 选择器:在介绍选择器之前,首先需要搞清楚JQ对象,$与$()的区别,并且需要知道$(element),这里element有几种类别,这些将在JQ对象中介绍。JQ的选择器大体分为四种类型(不官方,作者自身总结)。CSS选择器,属性选择器,伪类选择器,DOM选择器。

CSS&DOM:JQ可以动态的增,删,修改页面元素中的CSS样式,可以动态的操作DOM,这些操作包括查询,新增,删除,修改,替换,包裹(wrap)节点。这里的节点包括节点自身(self),子节点,子孙节点,直接父节点,间接父节点,兄弟节点,属性节点,文本节点。

事件:在掌握JS事件理论知识之后,JQ事件包括JQ事件对象与JQ操作两个部分。JQ拥有自身的事件(Event)对象,比较与JS中事件对象的区别。JQ事件的操作对应事件的几个过程,事件大体经历以下几个过程,首先页面当中的某个元素(target)绑定某个事件,然后为该事件添加监听器与处理器,然后用户通过某种方式(这里假定为click)触发事件。亦可以抽象为四个维度,绑定事件的元素(target),事件的监听器与处理器(listener&handler,一般监听器),事件的触发方式(click,onkeyDown,等等这些),事件触发(trigger)。JQ中的bind,on,delegate,trigger等等这些方法与这些操作是对应的。

动画: JQ动画的实质是动态修改元素CSS样式的操作集合,有点类似于动画片中将许多影像快速连续的播放。JQ动画是快速连续的修改CSS样式。JQ提供了默认的三种动画,fade(淡入,淡出),show(显示),hide(隐藏),slide(滑动)。

请求: JQ 支持Ajax请求,请求分为静态资源请求和动态请求,JQ提供了获取JS文件和JSON文件的静态请求,动态请求提供了常用的$.get,$.post请求,这些请求都是$.ajax请求的特例,get,post请求都提供了一些默认的属性值,这些值是无法覆盖的。例如即时在$.post方法中指定了type属性为get,也无法生效。

工具方法(utility method): 工具方法大体分为三类,第一类是关于JS基础数据类型和JS常用对象的方法,最常见的就是遍历数组的$.each方法,判断对象是否为空$.isEmptyObject等等。第二类是JQ对象自身的一些方法,例如noConflict()方法等等。第三类是关于JQ其他对象的方法。例如Deferred和Callback。

      JQ框架还在不断扩展,笔者使用的是3.1的版本。所以学习不止,关于JQ的总结也会随之不断的持续更新(但是笔者的时间比较少)。

      JQ插件库非常丰富,最常见的是UI库。相当于一个宝库,很大程度的简化了开发的难度。笔者用到一个总结一个。

参考资料                                                                             

    API:

           osChina  :      

           oscar: https://oscarotero.com/jquery/ (个人推荐)

           英文官网 : http://api.jquery.com/       

           中文官网:http://www.jquery123.com/

    Jquery.js下载地址:

           官网:http://jquery.com/download/

    PDF 书籍:

           个人网盘收藏:http://pan.baidu.com/s/1bogbLLH

    学习文档:

          官网(英文):http://learn.jquery.com/about-jquery/