为了账号安全,请及时绑定邮箱和手机立即绑定
  • 1. access就是检测一下,到底是应该使用set还是get。 2. 其实真正原因还是因为实例的get方法中的owner传入的是dom对象。
    查看全部
  • jquery整体架构和五大块
    查看全部
    0 采集 收起 来源:jQuery整体架构

    2016-06-08

  • array用来判断函数是不是已经add进去时,indexOf是用的reference作比较。
    查看全部
    0 采集 收起 来源:unique的设计

    2016-06-08

  • gc
    window.eval和eval是不同的。 window.eval(“var a=1”);可以是变量在全局看到 eval(“var a=1”)只能使变量在局部可见。 原因: window.eval是window的属性,而单独的eval是关键字, 注:如果这样写: var x=eval x("var a=1") 这样写跟: window.eval("var a=1")是一样的效果, 因为在将eval赋值给x时,eval是被看做window的属性来使用的。
    查看全部
  • gc
    JSON.parse是将字符串转为JSON JSON.stringify是将JSON转为字符串
    查看全部
  • 内部会划分一个新的构造器init吗?jQuery通过new原型prototype上的init方法当作构造器,那么init的原型链方法就是实例的方法了,所以jQuery通过2个构造器划分2种不同的调用方式一种是静态,一种是原型。
    查看全部
  • $.noConflict(); //让出控制权
    查看全部
  • HTML <iframe> 标签 定义和用法 iframe 元素会创建包含另外一个文档的内联框架(即行内框架)。 HTML 与 XHTML 之间的差异 在 HTML 4.1 Strict DTD 和 XHTML 1.0 Strict DTD 中,不支持 iframe 元素。 您可以把需要的文本放置在 <iframe> 和 </iframe> 之间,这样就可以应对无法理解 iframe 的浏览器。
    查看全部
  • gc
    (function () { JA = function (x) { return new JA.prototype.init(x); } JA.prototype={ init:function(x){ this.a1=function () { console.log(222222222222); } }, sa:function(){console.log(123123123123123);} } JA['ab'] = function () {// 用这样的方式,可以在类上添加函数,该函数就类似C#中的静态函数,不用实例化对象就可以使用 console.log(44444444444444); } JA.prototype.init.prototype = JA.prototype; window.JA = JA; })() JA.ab();
    查看全部
  • .end()可以返回当前dom的父节点
    查看全部
  • gc
    jquery 中 $.holdReady的用途: $.holdReady(true); $.getScript('a.js',function(){ $.holdReady(false); }) $(function(){}) 如果不适用holdready,那么在加载完a.js之前,$()中的内容就已经执行了, 如果使用了holdready,俺们在加载完a.js之后,$()中的内容才会执行。
    查看全部
  • 浏览器渲染原理 浏览器从下载文档到显示页面的过程是个复杂的过程这里包含了重绘和重排。各家浏览器引擎的工作原理略有差别但也有一定规则。 简单讲通常在文档初次加载时浏览器引擎会解析HTML文档来构建DOM树之后根据DOM元素的几何属性构建一棵用于渲染的树。渲染树的每个节点都有大小和边距等属性类似于盒子模型由于隐藏元素不需要显示渲染树中并不包含DOM树中隐藏的元素。 当渲染树构建完成后浏览器就可以将元素放置到正确的位置了再根据渲染树节点的样式属性绘制出页面。
    查看全部
    0 采集 收起 来源:Sizzle设计思路

    2016-05-21

  • // 1.$(document) // 2.$(‘<div>’) // 3.$(‘div’) // 4.$(‘#test’) // 5.$(function(){}) // 6.$("input:radio", document.forms[0]); // 7.$(‘input’, $(‘div’)) // 8.$() // 9.$("<div>", { // "class": "test", // text: "Click me!", // click: function(){ $(this).toggleClass("test"); } // }).appendTo("body"); // 10$($(‘.test’))
    查看全部
    0 采集 收起 来源:Sizzle选择器

    2018-03-22

  • function when(d1, d2) { var i = 0, resolveValues = [].slice.call(arguments), length = resolveValues.length; var len = length; //收集resolve值 var values = []; var deferred = jQuery.Deferred(); function updateFunc(value) { values.push(value); if (len === 1) { deferred.resolveWith('contexts', values); } len-- } for (; i < length; i++) { resolveValues[i].done(updateFunc) } return deferred; } when(d1, d2).done(function(v1, v2) { show(v1); // "Fish" show(v2); // "Pizza" }); 没看懂
    查看全部
    0 采集 收起 来源:when方法的设计

    2018-03-22

  • (function(window, undefined) { var jQuery = function() {} // ... window.jQuery = window.$ = jQuery; })(window); 从上面的代码可看出,自动初始化这个函数,让其只构建一次。详细说一下这种写法的优势: 1、window和undefined都是为了减少变量查找所经过的scope作用域。当window通过传递给闭包内部之后,在闭包内部使用它的时候,可以把它当成一个局部变量,显然比原先在window scope下查找的时候要快一些。 2、undefined也是同样的道理,其实这个undefined并不是JavaScript数据类型的undefined,而是一个普普通通的变量名。只是因为没给它传递值,它的值就是undefined,undefined并不是JavaScript的保留字。
    查看全部

举报

0/150
提交
取消
课程须知
源码的阅读不是一蹴而就的,需要大家有一定的功底,比如jQuery的基础运用以及API的熟悉度,除此之外要有牢固的javascript、DOM、CSS的基础功底,甚至还需要理解常见的设计模式、数据结构等等。当然大家也不要被这些给吓住了,理解,总是需要一种慢慢的学习过程。
老师告诉你能学到什么?
通过本课程的学习,您可以由浅入深地剖析jQuery库的设计与实现。 其中我们围绕的重心: 1、设计理念 2、结构组织 3、接口设计 4、模式运用 5、场景套用

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!