logo头像

求知若渴,虚心若愚

jQuery - jQuery源码学习 - jQuery源码结构

正版课程链接

基础要求

  • JavaScript基础扎实
  • 对原型和原型链非常熟悉
  • 熟练使用jQuery
  • 常用数据结构和正则表达式
  • 热爱前端,有深入探究研究源码的决心

jQuery源码版本

  • jquery2.0.3
    • jQuery2.0.3并不完全兼容IE 6、7、8
  • 解决方案:
1
2
3
4
5
6
7
8
9
10
11
12
// 不是IE就用2.03,IE8以上也用2.0.3,IE8及以下用1.11版本 
<!--[if !IE]> -->
<script src="/Scripts/jquery-2.0.3.min.js"></script>
<!-- <![endif]-->

<!--[if lte IE 8]>
<script src="/Scripts/jquery-1.11.1.min.js"></script>
<![endif]-->

<!--[if gt IE 8]>
<script src="/Scripts/jquery-2.0.3.min.js"></script>
<![endif]-->

学习资源

jQuery源码模块

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
(function () {  

(21,94) 定义了一些变量和函数 jQuery = function(){};就是我们平时用到的jquery或者$

(96,283) 给JQ对象添加一些方法和属性

(285,347) extend :JQ的继承方法

(349,817) jQuery.extend() :扩展一些工具方法

(877,2856) Sizzle :复杂选择器的实现

(2880,3042) Callbacks :回调对象 :函数的统一管理

(3043,3183) Deferred :延迟对象 :对异步的统一管理

(3184,3295) support :功能检测 :根据功能,检测浏览器版本

(3308,3652) data() :数据缓存 :

(3653,3797) queue() :队列管理 :入队,出队等,比如动画效果用得到

(3803,4299) attr(),removeAttr(),prop(),removeProp(),addClass(),removeClass(),toggleClass()
hasClass(),val()等,都是对元素属性的操作

(4300,5128) 事件操作的相关方法 :add(),remove(),trigger(),on()等事件方法

(5140,6057) DOM操作 :添加 删除 获取 包装 DOM筛选

(6058,6620) css():样式操作 兼容性处理,浏览器支持处理

(6621,7854) 提交的数据和ajax() :

(7855,8584) animate() :运动的方法

(8585,8792) 位置与尺寸的方法 :offset()等

(8804,8821) JQ支持模块化的模式

(8826) window.jQuery = window.$ = jQuery;

})()
支付宝打赏 微信打赏

赞赏是对我们的肯定!