首页 技术 正文
技术 2022年11月12日
0 收藏 724 点赞 4,760 浏览 1073 个字

注意:jQuery中有一个extend的方法,这个方法是添加js对象字段的,下面会多次用到

1:添加全局类的方法

常用的ajax就是该类插件,下面要编写一个简单的加法和减法的基于jQuery的方法

     $.extend({
add:function(a,b){return a+b;},
minus:function(a,b){return a-b;}
}); var i= $.add(100,200);
var j= $.minus(100,200);
alert(i+'##'+j);

第6行和第7行就可以使用该方法,对于js的全局静态公用方法,都可以这样写,将其他语言中的Global,Helper或者Utils等等文件中的方法,在js中可以用这种扩展jQuery的方法去做

2:添加对象的方法

下面要给按钮标签自定义一些方法,通过jQuery来调用(注意,按钮使用了bootstrap的样式,不过这对于下面的演示没有关系^_^)

 <div id="btn" class="btn btn-danger">
按钮点击
</div>

下边给按钮自定义了一个初始化的方法,让按钮把传入的参数显示在content上,而且还自定义了一个press的回调事件的方法

   +function($){
var parms={
name:"pluign",
version:"2.0"
};
var showDesc=function(obj){
$(obj).text(JSON.stringify(parms));
}
$.fn.initButton=function(options){
$.extend(parms,options);
return this.each(function(){
showDesc(this);
$(this).on('click',function(){
parms.press.apply(this);
});
});
}
}(jQuery);
$('#btn').initButton({
name:'hello world',
sex :'Male',
press:function(){
alert('click button');
}
});

第1行到18行是对jQuery的扩展,注意第一行的+号的写法,其实就是(function($){})(jQuery);
博主是参照Bootstrap的源码的写法,至于为什么这样写,猜测估计是为了省一个括号“)”字符吧,呵呵

方法中的showDesc将传入参数显示到按钮上

具体效果如下:

编写基于jQuery的插件的方法

由此可见:传入的参数,都可以在jQuery扩展中拿到,这样就可以在自己的扩展插件中做任意想做的事情了。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,128
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,600
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,443
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,216
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,851
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,939