首页 > 代码库 > 编写jQuery插件(二)——jQuery插件类型和机制
编写jQuery插件(二)——jQuery插件类型和机制
jQuery插件类型
jQuery插件主要有3种类型:
1、封装对象方法的插件
这种插件类型是最常见的一种插件,它将对象方法封装起来,对通过选择器获取的jQuery对象进行操作。
2、封装全局函数的插件
这种插件将独立的函数加到jQuery命名空间之下。如解决冲突用的jQuery.noConflict()方法,常用的jQuery.ajax()和jQuery.trim()方法等。
3、选择器插件
虽然jQuery的选择器十分强大,但还是会需要扩充一些自己喜欢的选择器,如用color(red)来选择所有的红色字的元素
jQuery插件机制
jQuery提供了两个用于扩展jQuery功能的方法,即jQuery.fn.extend()和jQuery.extend()。前者用于扩展上文提到的第1种,后者用于扩展后两种。这两种方法都接收一个类型为Object的参数。Object对象的“键/值”对分别代表”函数或方法名/函数主体“。
另外,jQuery.extend()方法除了可以用于扩展jQuery对象以外,还可以用一个或多个其他对象来扩展一个对象,然后返回被扩展的对象。
语法:jQuery.extend(target,obj1,...[objN])
例:合并settings对象和options对象,修改并返回settings对象。
var settings={validate:false,limit:5,name:"foo"};var options={validate:true,name:"bar"};var newOptions=jQuery.extend(settings,options);
结果为:
newOptions={validate:true,limit:5,name:"bar"}
jQuery.extend()方法经常被用于经常用于设置插件方法的一系列默认参数,如下面代码所示:
function student(options){ options=jQuery.extend({ name:"xiaoming", age:18, sex:"boy" /*默认参数*/ },options); /*options为传递的参数*/};
如果用户调用student方法的时候,在传递的参数options对象设置了相应的值,那么就使用设置的值,否则使用默认值:
student(name:"xiaohua",age:17,sex:"girl");student(name:"xiaojun",age:16);student();
编写jQuery插件(二)——jQuery插件类型和机制
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。