JS的常用事件

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>JS的常用事件</title>
	</head>
	<body>
		<script type="text/javascript">
			/*
			JS中的事件:
				blur 失去焦点
				focus 获得焦点
				
				click 鼠标单击
				dblclick 鼠标双击
				
				keydown 键盘按下
				keyup 键盘弹起
					
					mousedown 鼠标按下
					mouseup 鼠标弹起
					mouseover 鼠标经过
					mousemove 鼠标移动
					mouseout 鼠标离开
					
					reset 表单重置
					submit 表单提交
					
					change 下拉列表中选项改变,或文本框内容改变
					select 文本被选定
					load 页面加载完毕(整个HTML页面中所有的元素都加载完毕之后发生。)
				
				任何事件都会对应一个事件句柄。事件句柄是在事件前添加on。
				onXXX这个事案件句柄出现在一个标签的属性位置上。(事件句柄与属性的形式存在。)
			*/
		   //对于当前程序来说.sayHello函数被称为回调函数(callback函数)
		   // 回调函数的特点:自己把这个函数代码写出来,但是这个函数不是自己负责调用的,由其他程序负责调用该函数
		   function sayHello(){
			   alert("hello js!")
		   }
		   
		   
		</script>
		
		<!-- 注册的第一种方式,直接砸标签中使用事件句柄 -->
		<!-- 以下代码的含义是:将sayHello函数注册到按钮上,等待click时间发生后,被浏览器调用,我们称之为回调函数 -->
		<input type="button" value="hello" onclick="sayHello()"/>
		
		<input type="button" value="hello2" id="mybtn"/>
		<input type="button" value="hello3" id="mybtn1" />
		<input type="button" value="hello4" id="mybtn3" />
		<script type="text/javascript">
			function doSome(){
				alert("do Some!")
			}
			
			/*
				第二种注册方式。是使用纯JS代码完成事件的注册。
			*/
			//第一步:先获取这个对象(document是全部小写,内置对象,可以直接用,document就代表整个HTML页面)
			var btnObj = document.getElementById("mybtn");
			
			//第二步:给对象的onclick属性赋值.
			btnObj.onclick = doSome;//注意,不加小括号.
									//这行代码的含义是,将回调函数doSome注册到click事件上
			
			var mybtn2 = document.getElementById("mybtn1");
			mybtn2.onclick = function(){ // 这个函数没有名字,叫匿名函数,也是回调函数
				alert("test...");	//这里只是注册上,不会被调用,在click事件发生后才会调用
			}
			
			document.getElementById("mybtn3").onclick = function(){
				alert("test4");
			}
		</script>
		
	</body>
</html>

<!-- 
	java中也有回调函数机制:
		public class NyClass{
			public static void main(String[] args){
				主动调用run()方法,站在这个角度看run()方法叫做正向调用
				run();
			}
			
			//站在run方法的编写者角度来看这个方法,把run方法叫做回调函数。
			public static void run(){
				System.out.println("...")
			}
			
		}
 -->

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值