`

Query extend()详解

 
阅读更多

jQuery为开发插件提拱了两个方法,分别是:

 

jQuery.fn.extend(object);

jQuery.extend(object);

 

jQuery.extend(object); 为扩展jQuery类本身.为类添加新的方法。

jQuery.fn.extend(object);给jQuery对象添加方法。

 

 

fn 是什么东西呢。查看jQuery代码,就不难发现。


jQuery.fn = jQuery.prototype = {

   init: function( selector, context ) {//.... 

   //......

};

 

原来 jQuery.fn = jQuery.prototype.对prototype肯定不会陌生啦。

 

虽然 javascript 没有明确的类的概念,但是用类来理解它,会更方便。

jQuery便是一个封装得非常好的类,比如我们用 语句 $("#btn1") 会生成一个 jQuery类的实例。

 

jQuery.extend(object); 为jQuery类添加添加类方法,可以理解为添加静态方法。如:

 

$.extend({

  add:function(a,b){return a+b;}

});

 

便为 jQuery 添加一个为 add 的 “静态方法”,之后便可以在引入 jQuery 的地方,使用这个方法了,

$.add(3,4);  //return 7

 

jQuery.fn.extend(object); 对jQuery.prototype进得扩展,就是为jQuery类添加“成员函数”。jQuery类的实例可以使用这个“成员函数”。

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

Java代码 
  1. $.fn.extend({    
  2.     
  3.    alertWhileClick:function(){    
  4.    
  5.        $(this).click(function(){    
  6.    
  7.             alert($(this).val());    
  8.         });    
  9.     
  10.     }    
  11.     
  12. });    
  13.     
  14. $("#input1").alertWhileClick(); //页面上为:<input id="input1" type="text"/>   
 

 

$("#input1") 为一个jQuery实例,当它调用成员方法 alertWhileClick后,便实现了扩展,每次被点击时它会先弹出目前编辑里的内容。

 

真实的开发过程中,当然不会做这么小白的插件,事实上jQuery提拱了丰富的操作文档,事件,CSS ,Ajax、效果的方法,结合这些方法,便可以开发出更加 Niubility 的插件。

分享到:
评论

相关推荐

    jquery.query.js

    《jQuery.query.js插件详解与应用实践》 jQuery.query.js是jQuery库的一个扩展,它为jQuery提供了更强大的查询和操作功能。这个插件基于官方版本的jquery.query-2.1.7.js,专为增强jQuery的功能和灵活性而设计。...

    Ruby on Rails中的ActiveResource使用详解

    ### Ruby on Rails中的ActiveResource使用详解 #### 一、引言 在现代Web开发中,Ruby on Rails(简称Rails)以其高效、优雅的特性而受到广泛欢迎。Rails框架内置了许多强大的工具来帮助开发者构建高性能的应用程序...

    jQuery自定义控件

    ### jQuery自定义控件知识点详解 #### 一、概述 在现代前端开发中,使用JavaScript库(如jQuery)来创建自定义控件是一种常见的做法。这些控件不仅可以提高用户界面的交互性和美观度,还可以简化代码逻辑,使开发...

    图书馆管理系统的用例图.pdf

    《图书馆管理系统用例图详解》 图书馆管理系统是一个典型的业务信息系统,它通过计算机技术对图书馆的图书资源、读者信息以及借阅行为进行高效管理。本文将深入解析该系统的用例图,帮助我们理解其核心功能和参与者...

    struts2+extjs中File的upload&download;&delete;例子及说明

    ### Struts2与ExtJS集成实现文件的上传、下载与删除功能详解 #### 一、项目背景与技术栈概述 本案例旨在通过Struts2框架与ExtJS前端库的结合来实现文件的批量上传、下载以及删除功能。适用于对Struts2与ExtJS有...

    扩展VHD虚拟磁盘空间

    - 如果需要查看可扩展的最大值,可以使用`query vdisk`命令。 6. **挂载VHD**:使用`attach vdisk`命令将扩展后的VHD挂载到系统中。此时VHD应该显示为一个新的物理磁盘。 7. **列出所有卷**:通过`list volume`...

    精通JS脚本之ExtJS框架.part2.rar

    6.4.4 Ext.query与Ext.select 6.5 应用模板 6.5.1 Ext.Template 6.5.2 Ext.XTemplate 第7章 设计表单类布局 7.1 Form表单简介 7.1.1 Form表单的基本配置 7.1.2 ExtJS对Form表单的封装 7.2 ExtJS的表单组件 ...

    精通JS脚本之ExtJS框架.part1.rar

    6.4.4 Ext.query与Ext.select 6.5 应用模板 6.5.1 Ext.Template 6.5.2 Ext.XTemplate 第7章 设计表单类布局 7.1 Form表单简介 7.1.1 Form表单的基本配置 7.1.2 ExtJS对Form表单的封装 7.2 ExtJS的表单组件 ...

    AutoCAD 常用快捷键

    ### AutoCAD常用快捷键知识点详解 #### 一、概述 AutoCAD是一款广泛应用于建筑、机械设计及工程领域的专业计算机辅助设计(CAD)软件。为了提高工作效率,熟练掌握其快捷键至关重要。本文档将详细介绍一系列常见且...

    简介EasyUI datagrid editor combogrid搜索框的实现

    【知识点详解】 本文主要介绍如何在EasyUI的DataGrid中实现Combogrid编辑器的搜索功能。EasyUI是一个基于jQuery的UI库,提供了一系列的组件,包括DataGrid和Combogrid,它们通常用于数据展示和编辑。Combogrid是...

    sql函数大全

    ### SQL函数大全详解 SQL(Structured Query Language,结构化查询语言)是一种用于管理关系数据库的标准计算机语言。在SQL中,函数被广泛应用于处理数据、执行计算以及格式化输出等任务。下面将详细介绍部分常见的...

    CAD快捷键命令大全

    #### 二、具体快捷键命令详解 1. **AԲ - 圆弧(Arc)** - 用于绘制圆弧。 2. **Lֱߡ - 直线(Line)** - 用于绘制直线段。 3. **CԲ - 圆(Circle)** - 用于绘制完整的圆形。 4. **liѯ - 快速查看信息...

Global site tag (gtag.js) - Google Analytics