为了扩展jQuery库函数,jQuery提供了两种方式:
jQuery.extend(object):扩展jQuery对象本身,主要是用来扩展jQuery全局函数 ,调用时直接$.函数名(参数),如下例子:
$.extend({
min: function(a,b){
return a<b?a:b;
}
/*max: function(a,b){
return a>b?a:b;
}*/
});
console.log($.min(1,2));
jQuery.fn.extend(object):扩展 jQuery 元素集,主要用于扩展jQuery插件,调用时需要先创建jQuery对象,然后才能调用相应的函数,如下例子:
<script>
$.fn.extend({
values: function() {//获取选中复选框value属性的属性值
var result = "";
this.each(function() {
if(this.checked){
result =result+ ","+this.value;
}
});
if(result != ""){
result = result.substr(1);
}
return result;
}
});
$(function(){
var result = $("input[type=checkbox]").values();
console.log(result);
});
</script>
<body>
<input type="checkbox" name="hobby" value="1" checked="checked"/>足球
<input type="checkbox" name="hobby" value="2"/>篮球
<input type="checkbox" name="hobby" value="3" checked="checked"/>乒乓球
</body>
这两种方式主要区别在于定义完毕后,调用方法的方式不同