手记

Jquery源码学习(第二天)

  1. 学习对象:jquery-2.0.3.js
  2. 学习方式:视频教程+本地调试
  3. 学习目标:jquery源码,累计代码行数8829行,功能模块分割如下
    (21,94)行 定义了一些变量和函数,如 jQuery = function(){};
    (96,283)行 给JQ对象添加方法和属性;
    (285,347)行 extend:JQ的继承方法;
    (349,817)行 jQuery.extend():扩展一些工具方法;
    (877,2856)行 Sizzle:复杂选择器的实现(Sizzle可以单独使用到项目中);
    (2880,3042)行 Callbacks:回调对象,作用:对函数的统一管理;
    (3043,3183)行 Deferred:延迟对象,作用:对异步的统一管理(可以实现先执行异步方法再执行非异步方法,如果没有延迟对象,可能会出现非异步方法先执行异步方法后执行);
    (3184,3295)行 support:功能检查,作用:判断浏览器(传统的判断浏览器版本是通过浏览器版本进行判断,但浏览器更新速度太快,为了更方便,采用判断不同版本的浏览器的功能)
    (3308,3652)行 data():数据缓存,作用:可以将数据缓存到标签对象上,防止内存溢出,它和attr()存在本质区别是,attr()直接将属性数据加到标签对象上,data()只是缓存起来,并不会实际存到标签对象上。代码如下:
<script>
$(document).ready(function(){
    $("#p1").data('name','aaa');
    alert($("#p1").data("name"));
});
</script>
<p id="p1">测试data方法</p>

结果将弹出"aaa"。p标签上不存在name的属性。
(3653,3797)行 queue():队列管理,作用:一种数据结构,类似排队,先进先出;
(3803,4299)行 attr(),prop(),val(),addClass()等:对元素属性的操作;
(4300,5128)行 on(),trigger():事件操作的相关方法;
(5140,6057)行 DOM操作:添加,删除,获取,包装,DOM筛选;
(6058,6620)行 css():样式的操作;
(6621,7854)行 提交的数据和ajax()操作:ajax(),load(),getJson();
(7855,8584)行 animate():运动的方法;
(8585,8792)行 offset():位置和尺寸的方法;
(8804,8821)行 JQ支持模块化的模式;
(8826)行 JQ提供的对外访问接口:window.jQuery = window.$=jQuery;

7人推荐
随时随地看视频
慕课网APP