`
letitbe
  • 浏览: 237791 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jquery源代码解读笔记

阅读更多

1,整体结构如下

( function () {
// ……
})();
第一对括号里是一个匿名函数,第一对括号表示执行该函数。
注: js的匿名函数模式   http://www.hedgerwow.com/360/dhtml/js-anonymous-function-patterns.html
非匿名函数的类似写法如下
function test(){alert('test');})();
所有的jquery代码都放在该匿名函数里,避免了命名冲突。但有两个要单独处理:'jQuery'和'$'

// Map over jQuery in case of overwrite
var _jQuery = window.jQuery,
// Map over the $ in case of overwrite
    _$ = window.$;

var jQuery = window.jQuery = window.$ = function( selector, context ) {
    
// The jQuery object is actually just the init constructor 'enhanced'
    return new jQuery.fn.init( selector, context );
};
noConflict: function( deep ) {
        window.$ 
= _$;

        
if ( deep )
            window.jQuery 
= _jQuery;

        
return jQuery;
    },
假如没有执行noConflict,则原来定义的$或jQuery(如果定义了的话)会被一个新函数覆盖,只在内部留一个原来的引用(名叫_$或_jQuery)。
如果要兼容原来的$,则执行jQuery.noConflict(),然后只能用jQuery的写法;
极端情况:"jQuery"也被占用了,又要兼容,那么执行var myJQ =jQuery.noConflict(true),以后全用myJQ的写法。
注意:这时jquery.js要放在其他js的后面。
2,
 定义jQuery的构造和原型函数,这个过程同时定义了prototype的别名为fn:jQuery.prototype=jQuery.fn。 jQuery对象的原型prototype包括了诸多的核心方法和属性:
init
jquery 当前的版本号
size 返回了length属性
length
get
each
...
定义完了以后必须写以下代码,不明白
// Give the init function the jQuery prototype for later instantiation(晚初始化?)
jQuery.fn.init.prototype = jQuery.fn;
http://bbs.blueidea.com/thread-2843388-1-1.html
jQuery.prototype.init( selector, context )是jQuery对象的一个成员函数,但是在jQuery构造函数中总是会执行这个函数,所以说"它是加强的构造函数(init constructor 'enhanced')。因为在执行构造函数jQuery 时总是会执行它。 这也是很多框架的典型做法。
jQuery有3个身份,类,对象,函数(构造函数)。
如果find是对象的方法,即类似于 jQuery.find=function(){}
那么就应该使用jQuery.find();

如果find是类的成员函数,即类似于 jQuery.prototype.find=function(){}
那么必须通过jQuery()返回jQuery实例,再调用find方法,即jQuery().find()。

8,jQuery源码解读---执行过程分析
http://hi.baidu.com/zhuguoneng/blog/item/3d07e9d667e9482b06088b4c.html
分享到:
评论

相关推荐

    jquery学习代码和笔记

    本人学习jquery的代码和笔记,主要是jquery的入门知识,以及前后台数据交互。包括一个jquery的web工程和一个配置好的tomcat。jquery工程是用myeclipse10做的,如果eclipse打不开可以重新建工程,再把对应的文件拷贝...

    锋利的jQuery 源代码

    锋利的jQuery 源代码 锋利的jQuery 源代码 锋利的jQuery 源代码 锋利的jQuery 源代码 锋利的jQuery 源代码 锋利的jQuery 源代码 锋利的jQuery 源代码 锋利的jQuery 源代码 锋利的jQuery 源代码

    Jquery学习 Jquery源代码 Jquery数据库操作

    Jquery学习 Jquery源代码 Jquery数据库操作 Jquery学习 Jquery源代码 Jquery数据库操作 绝对有用,技术含量

    javascript之jquery源代码,

    总的来说,jQuery-1.4.2.js和jQuery-1.4.2.min.js文件代表了jQuery的核心功能,对于想要深入了解JavaScript和前端开发的人员,研究这两个文件的源代码是非常有价值的。通过学习,开发者不仅可以提高工作效率,还能...

    jquery源代码 包括示例 包括示例

    这个压缩包文件"jquery源代码 包括示例 包括示例"显然包含了jQuery的核心源代码以及相关的示例,这对于学习和理解jQuery的工作原理及其用法是非常有价值的。 首先,jQuery的核心源代码是JavaScript的一个模块,它...

    jQuery攻略 源代码

    7. **性能优化**: 探讨如何编写高性能的jQuery代码,避免常见性能陷阱。 8. **兼容性问题**: 了解jQuery对不同浏览器的兼容策略,如何确保代码在多种环境下稳定运行。 9. **最佳实践**: 遵循官方推荐的编码规范和...

    锋利的jQuery源代码

    《锋利的jQuery源代码》是一本专门为jQuery初学者设计的学习资源,旨在帮助读者深入理解jQuery的核心机制,通过解析和解读jQuery的源代码,提升JavaScript编程能力。jQuery是一款广泛使用的JavaScript库,它简化了...

    巧用jquery源代码

    学习这部分可以帮助开发者写出更高效的jQuery代码。 8. **版本迭代**:jQuery的发展历程也是一个不断优化的过程。通过对比不同版本的源代码,我们可以了解技术趋势和jQuery的进化路径。 9. **兼容性处理**:jQuery...

    jQuery快速开发资料jQuery案例 代码 素材 笔记 作业资料.zip

    jQuery快速开发资料jQuery案例 代码 素材 笔记 作业资料,学习资料 01-getElementById获取元素.html 02-getElementsByTagName获取某些元素.html 03-H5新增获取元素方式(1).html 04-获取特殊元素.html 05-事件三要素....

    JSP&Servlet&JavaScript&Ajax&jQuery源代码

    通过学习和实践这些源代码,你可以了解到如何使用JSP创建动态网页,如何利用Servlet处理HTTP请求,如何运用JavaScript和jQuery增强用户交互,以及如何使用Ajax实现页面的无刷新更新。这些技术的结合使用,是构建现代...

    jQuery实战 源代码

    《jQuery实战 源代码》是一本专注于讲解jQuery库实际应用和源码解析的专业书籍。jQuery作为一款广泛使用的JavaScript库,极大地简化了DOM操作、事件处理、动画制作以及Ajax交互等任务,使得JavaScript编程变得更加...

    锋利的jquery源代码

    《锋利的jQuery源代码》是一份非常宝贵的资源,它为初学者提供了深入理解jQuery核心原理的机会。jQuery是一个广泛使用的JavaScript库,它极大地简化了HTML文档遍历、事件处理、动画制作以及Ajax交互等任务。这份源...

    Jquery学习+源代码+数据库操作

    Jquery学习 Jquery源代码 Jquery数据库操作 绝对有帮助,请下载,有技术含量的,没有你骂我

    精妙绝伦的jQuery 源代码

    《精妙绝伦的jQuery 源代码》一书,无疑是深入理解jQuery核心机制的宝贵资源。这本书通过详细的代码示例,帮助读者剖析jQuery库的内部运作,从而提升JavaScript编程能力。在这里,我们将探讨jQuery的核心概念、设计...

    Jquery 源代码分析

    本文将针对jQuery 1.2.6版本的源代码进行详细的解读,帮助读者理解其内部机制,提升JavaScript编程技能。 一、jQuery核心概念 1. **选择器引擎(Sizzle)**:jQuery的核心之一是选择器引擎Sizzle,它负责解析CSS...

    jQuery基础教程 (Learning jQuery) 完整源代码

    《jQuery基础教程 (Learning jQuery) 完整源代码》涵盖了jQuery这一强大JavaScript库的基本概念、核心功能以及实际应用。jQuery简化了HTML文档遍历、事件处理、动画制作和Ajax交互等任务,使得JavaScript编程变得...

    四款缩略图jQuery源代码

    【标题】"四款缩略图jQuery源代码" 涉及的是JavaScript库jQuery的应用,主要集中在创建和管理缩略图展示。jQuery是一款强大的JavaScript工具包,它简化了HTML文档遍历、事件处理、动画设计和Ajax交互。在这个项目中...

    深入PHP与jQuery开发源代码下载.docx

    深入PHP与jQuery开发源代码下载.docx深入PHP与jQuery开发源代码下载.docx深入PHP与jQuery开发源代码下载.docx深入PHP与jQuery开发源代码下载.docx深入PHP与jQuery开发源代码下载.docx

    jQueryMobile源代码

    在这个“jQueryMobile源代码”中,我们可以深入研究其内部机制,了解它是如何实现这些功能的。 首先,jQuery Mobile的核心概念是“页面(Pages)”和“面板(Panels)”。页面是应用的基本单元,而面板则用于提供...

Global site tag (gtag.js) - Google Analytics