在的init就是fn和prototype的一个方法。想调用只能 jQuery.fn.init()或者是jQuery.prototype.init(),那怎么办呢?你看我们一般都是这样调用fn里面的函数,$().xxx(),那就要想办法在jQuery中返回fn或者是protoype对象,为了达到这个目的实际上return jQuery.prototype就可以实现,但是程序本身还需要执行init这个方法,那就是下边的代码起了作用,把fn在绑定到init的 prototype原型上,这时候就相当月申明了一个jQuery.fn.init类,而且原型指向fn对象,是不是就统一了?这句效果就相当于

jQuery.fn.init=function(selector, context){

//...................

return jQuery().find(selectot);

其他的fn方法

}

jQuery.fn.init.prototype = jQuery.fn;

fn的init方法和大多数的方法又是返回jQuery数组对象,实现了连写,实际上这里 fn属性的定义完全可以去掉。jQuery.fn.init.prototype = jQuery.fn;可以改成jQuery.fn.init.prototype = jQuery.protoype;效果一样,以后的扩展函数可以写成jQuery.protoype.xxx=function(){}但是为了兼容版本就不得不这样写了。

现在是不是大概有点明白了?这个只是从对象引用的角度分析,因为这样分析更容易接受,所以上边讲的调用都是静态调用,jQuery.fn.init();在静态调用的时候prototype就可以理解成一个静态的属性,如果加了new就不一样了,那就是类之间的继承,先做这样的测试

var obj=new jQuery();obj.init();下篇再说继承关系。

jQuery.protoype.xxx=function(){}相关推荐

  1. 【JQuery】jQuery(document).ready(function($) { });的几种表示方法及load和ready的区别

    jQuery中处理加载时机的几种方式 第一种: jQuery(document).ready(function() {alert("你好"); }); //或 $(document ...

  2. jquery attr(“xxx“,“mmm“)修改标签属性的值

    jquery attr("xxx","mmm")修改标签属性的值 详细讲解

  3. 解决Jquery Kendo.xxx is not a function 的方法

    不知道大家遇到过没有,要同时间使用Telerick 和Kendo的时候 这个问题搞了我好多天,其实解决方法很简单,就是在LAYOUT里面先写TELERIK的注册脚本, 再写KENDO的. @(Html ...

  4. 初始化JQuery方法与(function(){})(para)匿名方法介绍

    一.初始化JQuery对象 DOM加载完成时运行代码 1.$(document).ready(function(){ 全写// 在这里写你的代码...}); 2.jQuery(function(){ ...

  5. jquery的$().each(function(i){})和和$.each(,function(i,n){})的区别和用法

    先是$().each(function(i){}),这是只能遍历jQuery对象: 然后是$.each("",function(i,n){}) ,是通用的遍历方法,可遍历任何对象, ...

  6. jQuery之.each( function(index, Element) )

    1.$(selector).each() 主要对DOM的遍历 $(selector).each(function(index,element)){ //index - 选择器的 index 位置 从0 ...

  7. JQuery中append(function(index,html)),appendTo(),after(function(index,html)),clone()方法

    不多说废话,直接说要点 1. append(function(index, html)) 该方法是版本1.4 中新增的,其功能是将一个function 函数作为append 方法的参数,该 函数的功能 ...

  8. jQuery 获取XXX标签的id/name以XXX开始/结尾的集合

    /*** 获取...标签的id/name以...开头的集合* @param tag html标签* @param prefix 前缀* @param attr id/name* @returns {j ...

  9. Django: jQuery中的function学习(一)

    jQuery $(this)/ .children/ "option:selected" (this)指的是这个当前select,(this)指的是这个当前select,(this ...

最新文章

  1. 今日arXiv精选 | 12篇EMNLP 2021最新论文
  2. 首届Apache Hadoop技术社区中国Meetup在京举办(附PPT)
  3. 如何确定VS编译器版本--_MSC_VER || #if _MSC_VER 1000 #pragma once #endif
  4. (51)蓝湖团队协作开发平台
  5. mysql in and in_完美解决mysql in条件语句只读取一条信息问题的2种方案
  6. 解决eclipse打开报错:failed to create the java virtual ma
  7. 遗传算法实例解析(python)
  8. TranslateAnimation类:位置变化动画类 (类似tab切换效果)
  9. malloc函数java_malloc函数详解及用法举例
  10. matlab半小提琴图,【画图专题】小提琴图vioplot
  11. 爬虫Scrapy框架运用----房天下二手房数据采集
  12. 埃尔米特插值及其代码
  13. styleSheets
  14. 电路原理 | 非线性电阻电路的小信号法,动态电路电感
  15. 儿时的动画,你看过那些?-我国的动画片
  16. 一个谷粉和3年的Google Reader重度使用者的碎碎念
  17. sqlserver 与access,excel互相导入导出代码
  18. 支付宝9张图稳扫出敬业福
  19. latex中输入数学中的“属于” 符号
  20. H5混合开发二维码扫描教程之大圣众娱十人牛牛源码搭建架设

热门文章

  1. 这是一篇Markdown手册
  2. bzoj 4278 [ONTAK2015]Tasowanie——后缀数组
  3. 遍历聚合对象中的元素——迭代器模式(二)
  4. Linux学习之CentOS(三十)--SELinux安全系统基础
  5. [zz]c++ list sort方法
  6. 《Beginning C# Objcets》学习笔记
  7. Visual Studio常用小技巧[备忘]
  8. excel公式中的$(美元符号)的作用
  9. 系统工具源码设计页面
  10. Teamprise Readies Java SDK for TFS