jQuery05(插件)

目录

自定义插件

$.extend:对象间继承

jquery拓展

拓展jquery类方法

 拓展$max()与$min()方法

 $.fn.extend

第三方插件

使用步骤:


自定义插件

$.extend:对象间继承

 $.extend(对象1,对象2):对象1继承对象2的属性和与属性相关的函数

 $.extend($,对象):让jquery继承对象的属性,函数

 $.extend({方法名:function(){方法体} }):多个方法之间用逗号隔开

<!DOCTYPE html>
<html>
	<head></head>
	<body>
		<script src="./js/jquery-3.5.1.js"></script>
		<script type="text/javascript">
		/*jquery功能拓展:*/
			// 声明两个对象变量
			 var 小明 = {
				 '上课': function () {
					 console.log('正在上课中...')
				 }
			 }			
			var 小红 = {
			        "吃饭": function () {
			            console.log("正在吃饭……")
			        }
			}
		    // 两个对象本身自带的:
			     小明.上课()
			     小红.吃饭()
			// extend对象间继承
			// $.extend(小明,小红)//小明会继承小红的属性和属性对应的函数
			// 因此小明有了小红的函数
			     小明.吃饭()
		</script>
	</body>
</html>

jquery拓展

有时候jquery功能中没有你想要用的功能,就需要拓展 jquery (让jquery具备自己编写的东西),比如上述代码中想让jquery拥有自定义的小明的上课的方法:

//让jquery继承小明这个对象
$.extend($,小明)
$.上课()

拓展jquery类方法

 $.extend({方法名:function(){方法体}})

$.extend({aa:function(){console.log('aa')}})//让jquery具备自定义方法aa
$.aa()//可以调用自己写的这个方法

 拓展$max()与$min()方法

例:让jquery具备一个求最大值/最小值的方法

<!DOCTYPE html>
<html>
	<head></head>
	<body>
		<script src="./js/jquery-3.5.1.js"></script>
		<script type="text/javascript">
			$.extend({//jquery继承一个对象{}
				//对象中的属性,函数:
				max:(...is)=>{//属性值是函数
				// ...is:具备多个参数,且是一个数组,is=[1,2,3,4,5,6,7,8,9]	
				var max=is[0]//打擂台,默认最大值为数组第一位
				// 或者用负无穷大:let max = -Infinity //Infinity 无穷大
				//和它比较:
				for(var i of is){
					max=max<i ? i:max
				 }
				 return max// 返回最大值
			   }
			})
			// console.log($.max(1,2,3,4,5,6,7,8,9))//继承了就有这个对象中的函数
			// $.min同理
		</script>
	</body>
</html>

以上代码是让jquery继承即具备了自定义的对象,且这个自定义对象中具有一个max属性,在这个max属性中具有一个求最大值的函数,之后就可以用jquery调用这个函数了:($.min同理)

console.log($.max(1,2,3,4,5,6,7,8,9))//继承了就有这个对象中的函数

运行结果如下:

 

 $.fn.extend

$.fn.extend({方法名:function(){方法体} }):是拓展在jquery对象的方法,不是拓展在jquery上的方法

$jquery

$("xx")jquery对象

<!DOCTYPE html>
<html>
	<head></head>
	<body>
		<script src="./js/jquery-3.5.1.js"></script>
		<script type="text/javascript">
	     $.fn.extend({
			        test:()=>{
			            console.log("haha")
			        }
			    })
			// 在jquery上的方法的调用:$.test()
			// 但是这里是jquery对象的方法的调用:任意放一个值
			     $('a').test()
		</script>
	</body>
</html>

 运行如下:

第三方插件

运用:表单验证

插件名:jQuery Validation

使用步骤:

1,下载jQuery插件验证库:jquery.validate.js

https://jqueryvalidation.org/https://jqueryvalidation.org/2,将类库引入页面

3,两种方式使用验证:      

  a,表单中验证及错误信息:

        $("表单元素").validate({rules:{字段验证规则}

                                              messages:{字段错误信息} })

  b,输入错误时提示的样式:

        表格元素,要写在style属性里面: label.error{ 样式 }

 验证规则说明(仅供参考) :

注:第三方插件也是基于jquery的,使用之前要先导入jquery文件!

ONE EXAMPLE:

<!DOCTYPE html>
<html>
	<head></head>
	<body>
		<!-- 导入一个第三方插件之前要先导入jquery文件!-->
		<script src='./js/jquery-3.5.1.js'></script>
		<script src="jquery-validation-1.19.0/dist/jquery.validate.js"></script>
		<!-- 让提示变成中文 -->
  <script src='jquery-validation-1.19.0/dist/localization/messages_zh.js'></script>
		<form action="">
		    <p>
		        <input type="text" name="username" placeholder="用户名">
		    </p>
		    <p>
		        <input type="text" name="password" placeholder="用户密码">
		    </p>
		    <p>
		        <button>登录</button>
		        <button type="reset">取消</button>
		    </p>
		</form>
		<!-- 更改提示颜色 -->
		<style>
		        label.error{
		            color: red;
		        }
		</style>
		<script type="text/javascript">
			// 表单验证:导入jquery里面没有的插件:
			// $('form').validate({//validate中要填一个对象{}
			// 	rules:{
			// 		username:"required",//具备必填规则,未填则会自动提示
			// 		password:"required"
			// 	}
			// })
			
			$("form").validate({
				rules:{
				username: {
					required:true,
					rangelength:[5,10]// 长度限制
				 },				
				password:"required"
			   }
			})
		</script>
	</body>
</html>

运行如下:


感 谢 阅 读 ^_^

  • 8
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值