2020-09-16

移动图标(move)

	<style type="text/css">
		#img1 {
			position: absolute;
			top: 0px;
			left: 0px;
		}
	</style>
</head>
<body onkeydown="move(event)">
	<img id="img1" src="../云购一号/img3/切图/download_iphone_selected.png" alt="">
</body>
<script type="text/javascript">
	var top1 = 0;
	var left = 0;

	function move(e) {
		switch (e.keyCode) {
			case 37:
				left -= 5;
				break;
			case 38:
				top1 -= 5;
				break;
			case 39:
				left += 5;
				break;
			case 40:
				top1 += 5;
				break;
		}
		var img1 = document.getElementById("img1");
		img1.style.top = top1 + "px";
		img1.style.left = left + "px";
  1. 如果把top1改成top, 就会导致上下移动失败,这是因为window.top这个全局变量冲突了,换一个变量名就好了
  2. 如果把top1和left移入函数中,发现只能移动5像素,原因是函数内部的局部变量在每次调用函数时都会重新创建并初始化,也就是说每一次调用left和top1的值都是零,不会保留上一次的值,如果需要保留,就只能使用全局变量!

其他的事件

onload:页面加载事件

onfocus:获得焦点事件

onblur:失去焦点事件

onchange:值改变事件

事件的注册

三种方法

一、使用onxxx属性,例如οnclick=”fun()“

二、通过js设置元素的xxx

三、通过addEventListener注册

在这里插入图片描述

后两种方法的好处:

将页面的内容,样式,行为分类,内容和样式可能是美工人员去完成

行为(也就是js内容),往往是程序员的事,分离有利于分工

第三种方式addEventListener(添加事件监听),他的第一个参数事件名,第二个参数是事件的处理函数

捕获和冒泡

在这里插入图片描述

在这个案例中,冒泡是从内而外,先文字在div,而冒泡则相反

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值