jquery的事件机制

<html>
	<head>
		<title>jQuery的事件机制</title>
		<meta charset="UTF-8"/>
		<!--
			jQuery的事件机制:
				问题:
					目前使用事件机制需要在HTML元素上使用属性进行声明和调用。
					但是这样造成如果需要更换事件,就需要改变源码。事件和HTML源码的
					耦合性过高。
				解决:
					使用js代码的方式进行事件的添加和应用
				实现:
					jquery
				使用:
					事件绑定
						元素对象名.bind("事件名",fn)//给对象添加指定的事件,并执行指定的函数。
						特点:
							解耦
							可以给一个事件添加多个函数,不会覆盖。
					事件解绑
						元素对象名.unbind("事件名")//将元素对象的指定事件解除。
					一次性事件
						元素对象名.one("事件名",fn)//添加一次性事件,事件触发立即失效。
					直接事件添加:
						元素对象名.事件名(fn)//给指定的对象添加指定的事件
					jQuery页面加载:
						$(document).ready(fn)//页面加载成功指定指定的函数
						$(fn)
		-->
		<!--引入jQuery文件-->
		<script src="js/jquery-1.9.1.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript">
			//事件绑定
				function testBind(){
					
				}
			//事件解绑
				function testUnBind(){
					//获取元素对象
					var btn=$("#btn");
					//解绑事件
					btn.unbind("click");	
				}
			//one事件
				function testOne(){
					//获取元素对象
					var btn=$("#btn");
					//一次事件添加
					btn.one("click",function(){
						alert("一次性事件");
					})
				}
			//事件直接添加
				function testClick(){
					//获取元素对象
					var btn=$("#btn");
					//添加单击事件
					btn.click(function(){
						alert("我是单击");
					})
				}
			//jQuery的页面加载
				$(document).ready(function(){
					$("#btn").click(function(){
						alert("点击事件");
					})
					$("#bind").click(function(){
						//获取元素对象
						var btn=$("#btn");
						//添加事件
						btn.bind("click",function(){
							alert("我是单击");
						})
						btn.bind("click",function(){
							alert("我是单击2");
						})
					})
					
				})
			
				$(function(){
					$("#uname").blur(function(){
						//获取用户数据
						var uname=$("#uname").val();
						//获取Span
						var span=$("#unameSpan");
						//校验
							//正则
							var reg=/^[\u4e00-\u9fa5]{2,4}$/;
							//开始校验
							if(uname==""){
								span.html("*用户名不能为空").css("color","red");
							}else if(reg.test(uname)){
								span.html("*用户名OK").css("color","green");
							}else{
								span.html("*用户名不符合规则").css("color","red");
							}
					})
				})
		</script>
	</head>
	<body>
		<h3>jQuery的事件机制</h3>
		<input type="button" name="" id="bind" value="测试bind添加事件"/>
		<input type="button" name="" id="" value="测试unbind解绑事件" onclick="testUnBind()" />
		<input type="button" name="" id="" value="测试one一次性事件" onclick="testOne()" />
		<input type="button" name="" id="" value="测试直接添加事件--click" onclick="testClick()" />
		<hr />
		<input type="button" name="" id="btn" value="测试"/>
		<hr />
		用户名: <input type="text" name="uname" id="uname" value="" /><span id="unameSpan"></span>
	</body>
</html>

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值