DOM笔记(六):怎么进行JQuery扩展?
一、全局函数的扩展
全局函数是将独立的函数添加到JQuery的命名空间中区。在使用的时候,可以通过$.fucnName(param)或者jQuery.funcName(param)方式进行调用。
1、直接在JQuery上添加:在jQuery上添加一个全局函数sayHello
jQuery.sayHello=function(name)
{
alert(name+"您好");
};
调用方式:
jQuery.sayHello("张子涵");
//或者用$.sayHello("张子涵");
2、jQuery.extend():其作用是用一个或者多个对象来扩展一个对象,返回被扩展的对象。
2.1 jQuery.extend(dsc,src1,src2…):将src1,src2扩展到dsc对象,并返回扩展后的dsc对象(合并对象)
2.2 jQuery.extend(object):对jQuery命名空间本身进行扩展,结果就是在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对象调用的方法。
1、jQuery.fn
//在jQuery对象上添加sayHello方法 jQuery.fn.sayHello=function(name) { alert(name+"您好"); }
调用
$("div").sayHello("dwqs");
2、jQuery.fn.extend
扩展 jQuery 元素集来提供新的方法(通常用来制作插件)。
//增加两个插件方法。 jQuery.fn.extend({ check: function() { return this.each(function() { this.checked = true; }); }, uncheck: function() { return this.each(function() { this.checked = false; }); } });
调用:
$("input[type=checkbox]").check();
$("input[type=radio]").uncheck();
在下一篇笔记中,将用一个简单的示例讲解如何用这种方式开发插件。
原文首发:http://www.ido321.com/1330.html
下一篇:搜索和网页排名的数学原理