1.jQuery.extend(object);为扩展jQuery类本身.为类添加新的方法。 
2.jQuery.fn.extend(object);给jQuery对象添加方法。

jQuery.fn = jQuery.prototype = {init: function(selector, context) {//内容}
}

2.jQuery.fn === jQuery.prototype

3.虽然 JavaScript 没有明确的类的概念,但是用类来理解它,会更方便。jQuery便是一个封装得非常好的类,比如我们用 语句$("#div1")会生成一个 jQuery类的实例。

为jQuery类添加类方法,可以理解为添加静态方法。

jQuery.extend({min: function(a, b) {return a < b ? a : b;},max: function(a, b) {return a > b ? a : b;}
});
jQuery.min(2, 3); //  2
jQuery.max(4, 5); //  5

jQuery.fn.extend(object);

就是为jQuery类添加“成员函数”。jQuery类的实例才可以调用这个“成员函数”。

比如我们要开发一个插件,做一个特殊的编辑框,当它被点击时,便alert 当前编辑框里的内容。可以这么做

$.fn.extend({alertWhileClick: function() {$(this).click(function() {alert($(this).val());});}
});
//$("#input1")是jQuery的实例,调用这个扩展方法
$("#input1").alertWhileClick();

jQuery.extend() 的调用并不会把方法扩展到对象的实例上,引用它的方法也需要通过jQuery类来实现,如jQuery.init()

jQuery.fn.extend()的调用把方法扩展到了对象的prototype上,所以实例化一个jQuery对象的时候,它就具有了这些方法,在jQuery.JS中到处体现这一点

jQuery.fn.extend = jQuery.prototype.extend

你可以拓展一个对象到jQuery的 prototype里去,这样的话就是插件机制了。

(function($) {$.fn.tooltip = function(options) {};//等价于 vartooltip = {function(options) {}};$.fn.extend(tooltip) = $.prototype.extend(tooltip) = $.fn.tooltip
})(jQuery);

jquery的$.extent()方法的总结相关推荐

  1. jquery的扩展方法介绍

    最近一直在写js,这其中也少不了一位js的主角了jQuery,下面介绍的是jQuery的一些扩展,也就是jQuery的扩展方法,jQuery的扩展方法有两种方式,一种是jQuery本身的扩展方法,另一 ...

  2. jQuery通过ajax方法获取json数据不执行success的原因及解决方法

    1.jquery通过ajax方法获取json数据不执行success回调 问题描述:jquery通过ajax方法获取json数据不执行success回调方法 问题原因:json格式存在问题或不符合标准 ...

  3. Jquery源码中的Javascript基础知识(四)— jQuery.fn.init方法

    $() 即调用了jQuery.fn.init方法 jQuery = function( selector, context ) {return new jQuery.fn.init( selector ...

  4. jquery中not方法失效的解决方案

    jquery中not方法失效的解决方案 参考文章: (1)jquery中not方法失效的解决方案 (2)https://www.cnblogs.com/xxqxxq/p/9269669.html 备忘 ...

  5. jQuery使用blur()方法触发两次的解决方法

    jQuery使用blur()方法触发两次的解决方法 参考文章: (1)jQuery使用blur()方法触发两次的解决方法 (2)https://www.cnblogs.com/wgl1995/p/92 ...

  6. 使用jquery的load方法设计动态加载,并解决被加载页面JavaScript失效问题

    使用jquery的load方法设计动态加载,并解决被加载页面JavaScript失效问题 参考文章: (1)使用jquery的load方法设计动态加载,并解决被加载页面JavaScript失效问题 ( ...

  7. jquery 异步调用方法中不能给全局变量赋值的原因及解决办法

    在调用一个jquery的ajax方法时我们有时会需要该方法返回一个值或者给某个全局变量赋值,可是我们发现程序执行完后并没有获取到我们想要的值,这时很有可能是因为你用的是ajax的异步调用async:t ...

  8. 理解一下jQuery.extend()和jQuery.fn.extend()方法

    为了方便用户创建插件,jquery提供了jQuery.extend()和jQuery.fn.extend()方法. 1. jQuery.extend() 方法有一个重载. jQuery.extend( ...

  9. jquery selector 使用方法

    jquery selector 使用方法 <select class="selector"></select> 1 设置value为pxx的项选中$(&qu ...

最新文章

  1. 与其焦虑成疾,不如静心学习
  2. php 升序 排序字符串,PHP asort():对数组排序(升序),并保持索引关系
  3. mysql 缓存机制
  4. 四则运算3(二柱子同学的第三炼狱)
  5. SAP Spartacus i18n 的文本,和翻译相关的话题:internationalization
  6. python扫描ip的端口打开情况
  7. Java 从网络上下载文件
  8. html5中表格如何等分,纯css3饼图五等分
  9. codeforces1453 E. Dog Snacks
  10. js 加入debug后可以进入controller_写给前端的 Nest.js 教程——10分钟上手后端接口开发
  11. java读取文件指定内容_Java读取文本指定的某一行内容
  12. 在ASP.NET网站中实现带列表(其由xml文件控制生成)的视频播放
  13. python爬虫爬取多个页面_Python爬虫笔记:爬取单个页面
  14. C#编写的一个SFTP工具类
  15. 图解深度学习-梯度下降学习率可视化
  16. html可视化编辑器 mac,Sparkle For Mac v2.8.11 强大的可视化网页编辑设计工具 _ 黑苹果乐园...
  17. vivado仿真时候报错Common 17-39
  18. 电线行业中UL单支电子线成本计算
  19. (附源码)ssm市级疫情防控管理 毕业设计 030957
  20. Notepad++安装JsonViewer插件

热门文章

  1. mongodb spring 超时时间_spring data mongodb 配置遇到的几个问题
  2. mysql如何存json格式_mysql 插数据,存json格式
  3. mysql8jdbc连接串_mysql8 JDBC连接注意事项
  4. ubuntu20更换节点_Ubuntu 20.04 apt 更换国内源的实现方法
  5. laravel批量插入报错:1292: Incorrect datetime value: '0000-00-00 00:00:00' for column 'TERM_DATE'
  6. 引用http开头的JS失败以及laravel的url()方法的坑
  7. java常用技术栈,HR的话扎心了
  8. java数组转换成字符串,附小技巧
  9. 【深度学习】深入浅出数字图像处理基础(模型训练的先修课)
  10. 机器学习(MACHINE LEARNING)MATLAB之surf()函数