jquery的extend和fn.extend的使用说明_jquery

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 当前编辑框里的内容。可以这么做:

复制代码 代码如下:

$.fn.extend({
alertWhileClick:function(){
$(this).click(function(){
alert($(this).val());
});
}
});
$("#input1").alertWhileClick(); //页面上为:<input id="input1" type="text"/>

时间: 2024-09-05 00:54:47

jquery的extend和fn.extend的使用说明_jquery的相关文章

jQuery插件开发中$.extend和$.fn.extend辨析

 jQuery插件开发分为两种: 1 类级别 类级别你可以理解为拓展jquery类,最明显的例子是$.ajax(...),相当于静态方法. 开发扩展其方法时使用$.extend方法,即jQuery.extend(object);  $.extend({         add:function(a,b){return a+b;} ,        minus:function(a,b){return a-b;}  });  页面中调用: var i = $.add(3,2); var j = $

jQuery中extend()和fn.extend()方法详解

  jQuery自定义了jQuery.extend()和jQuery.fn.extend()方法.其中jQuery.extend()方法能够创建全局函数或者选择器,而jQuery.fn.extend()方法能够创建jQuery对象方法. 这两个方法用的是相同的代码,一个用于给jQuery对象或者普通对象合并属性和方法一个是针对jQuery对象的实例,对于基本用法举几个例子: html代码如下:    代码如下: <!doctype html> <html> <head>

jQuery中extend()和fn.extend()方法详解_jquery

这两个方法用的是相同的代码一个用于给jQuery对象或者普通对象合并属性和方法一个是针对jQuery对象的实例对于基本用法举几个例子 html代码如下 复制代码 代码如下: <!doctype html> <html>    <head>       <title></title>         <script src='jquery-1.7.1.js'></script>    </head>    <

jquery简单插件制作(fn.extend)完整实例_jquery

本文实例讲述了jquery简单插件制作方法.分享给大家供大家参考,具体如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang=&qu

jQuery Mobile开发中日期插件Mobiscroll使用说明_jquery

近期在移动方面的开发,使用jQuery Mobile ,移动方面的插件不如Web 方面的插件多,选择的更少,有一些需要自己去封装,但功力尚不足啊. 日期插件JQM也提供了内置的,但样式方面不好看,只好百度.Google啦,找到了两款 jquery-mobile-datebox 和 mobiscroll-2.3 jqueryMobileDatebox 这个在板上的表现不好,性能方面有点卡 mobiscroll 性能方面比前者要好一些,效果更简洁 ,划动更流畅 放在一起对比下 各位看官,你们觉得哪个

jQuery 关于伪类选择符的使用说明_jquery

   jQuery选择器的强大不仅在于选择器支持基本的css选择符,还支持很多CSS的伪类选择符,甚至可以自定义选择符,下面让我们来看看一些伪类选择符   :nth-child的用法         nth-child是一个css3伪类选择符,在jQuery中被实现了,在Jquery API中对nth-child的定义是:"匹配其父元素下的第N个子或奇偶元素".读着感觉有点绕口,下面让我们通过例子来说明: 复制代码 代码如下: <div>    <ul>   

Jquery上传插件 uploadify v3.1使用说明_jquery

官方地址:http://www.uploadify.com/ 提供的下载地址:http://www.jb51.net/jiaoben/21484.html 官方英文文档:http://www.uploadify.com/documentation/ 使用方法(.net版本): 前台JS 复制代码 代码如下: $("#id").uploadify({ height: 30, swf: '/uploadify/uploadify.swf', uploader: '/Handler/uplo

jQuery插件开发的两种方法及$.fn.extend的详解

 jQuery插件开发分为两种:1 类级别.2 对象级别,下面为大家详细介绍   1 类级别    类级别你可以理解为拓展jquery类,最明显的例子是$.ajax(...),相当于静态方法.    开发扩展其方法时使用$.extend方法,即jQuery.extend(object);   代码如下: $.extend({    add:function(a,b){return a+b;} ,    minus:function(a,b){return a-b;}  });    页面中调用:

jQuery技术内幕:深入解析jQuery架构设计与实现原理. 2.6 jQuery.extend()、jQuery.fn.extend()

2.6 jQuery.extend().jQuery.fn.extend() 2.6.1 如何使用 方法jQuery.extend()和jQuery.fn.extend()用于合并两个或多个对象的属性到第一个对象,它们的语法如下: jQuery.extend( [deep], target, object1 [, objectN] ) jQuery.fn.extend( [deep], target, object1 [, objectN] ) 其中,参数deep是可选的布尔值,表示是否进行深度