简述jQuery扩展机制(插件)

介绍

我们在使用jQuery库内函数时,有时会遇到库内函数不能满足需求的问题,此时就需要我们扩展jQuery库函数,即添加插件。一般来说,jQuery提供了两种扩展其库函数的方法,区别就在于它们分别扩展了JQ对象本身和JQ元素集,因此在调用方式上,前者可直接使用‘$’符号调用,而后者需要先创建JQ对象后再调用,下面分别来介绍这两种方式。

详析

1、jQuery.extend(object)

作用:扩展jQuery对象本身,主要是用来扩展jQuery全局函数 ,调用时直接$.函数名(参数)

实例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title>插件机制</title>
		<script src="js/jquery-3.3.1.js"></script>
		<script>
			$.extend({
				min: function(a, b) {
					return a < b ? a : b;
				},
				max: function(a, b) {
					return a > b ? a : b;
				}
			});
			var min = $.min(1,2);
			console.log(min);
			var max = $.max(1,2);
			console.log(max);
		</script>
	</head>
	<body>
	</body>
</html>

2、jQuery.fn.extend(object)

作用:扩展 jQuery 元素集,主要用于扩展jQuery插件,调用时需要先创建jQuery对象,然后才能调用相应的函数

实例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script src="js/jquery-3.3.1.js"></script>
	</head>
	<body>
		<form>
			<input type="checkbox" name="num" value="1" />001
			<input type="checkbox" name="num" value="2" />002
			<input type="checkbox" name="num" value="3" />003
			<input type="checkbox" name="num" value="4" />004
			<input type="button" value="获取勾选项值" onclick="getvalue()" />
		</form>
		<script>
			jQuery.fn.extend({
				values:function(){
					var result="";
					this.each(function(){//此处this代指调用此方法的JQ对象
						if(this.checked){
							result=result+","+this.value;
						}
					});
					result = result==""?"":result.substring(1);
					return result;
				}
			});
			
			function getvalue(){
				var result = $("[name='num']").values();
				alert(result);
			}
		</script>
	</body>
</html>

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值