js鼠标案例

(1)Onmousewheel:鼠标滚轮案例

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			#div1{
				width: 100px;
				height: 100px;
				background-color: yellowgreen;
			}
		</style>
	</head>
	<body>
		<div id="div1" onmousewheel="wheel(event)"></div>
	</body>
	<script type="text/javascript">
		var width =100;
		var height = 100;
		
		function wheel(e){
			if(e.wheelData > 0){
				width +=5;
				height +=5;
			} else{
				width -=5;
				height -=5;
			}
			var div1 = document.getElementById("div1");
			div1.style.width = width + "px";
			div1.style.height = height + "px";
		}
	</script>
</html>

运行效果:
在这里插入图片描述

通过鼠标滚轮来让图片变小
在这里插入图片描述

(2)控制键的键码值案例

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>获取键盘编码值</title>
	</head>
	<body>
		<input type="text" id="what" onkeydown="keydown(event)"/>
	</body>
	<script type="text/javascript">
		function keydown(e){
			alert (e.keyCode)
			}
	</script>
</html>

在这里插入图片描述
注意:键码为13的enter,是字母键盘上的回车键
键码为108的enter,是右方数字小键盘上的回车键(笔记本一般没有)

(3)图片的移动

KeyCode属性,记录了按下键的编码
Keypress事件只捕获课可打印字符的按键,不能捕获例如shift,ctrl,alt之类
但是可以通过shiftkey,ctrlkey等属性判断在击键的同时是否按下shift
Ctrl等辅助键

1.keydown,keyup。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			#img1{
				position: absolute;
				top: 0px;
				left: 0px;
			}
		</style>
	</head>
	<body onkeydown="move(event)">
		<img id="img1" src="img/a.jpg" 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";
		}
	</script>
</html>

注意:(1)使用变量top导致上下移动失败,原因是和Windows.Top这个全局变量冲突了换个变量名就好了
(2)如果top1和left移入函数中,发现只能移动5像素,原因是函数内部的局部变量在每次调用函数的时候都会重新创建并初始化,也就是说每一次调用left和top1的值都是零
不会保留上一次值,如果需要保留,就只能用全局变量。

(4)事件注册

三种方法:
(1)使用onxxx属性,例如οnclick=“fun”
(2)通过js设置属性元素的onxxx属性
(3)通过addEventlisten注册

运行效果:
在这里插入图片描述

没有单击的效果:
在这里插入图片描述

后面两种方法有什么好处:
将页面的内容,行式、行为分离、内容和样式可能是美工人员去完成
行为(也就是js内容)往往是程序员的事。有利于分工合作
第三种方式addeventlistener(添加事件监听)它的第一个事件名,第二个参数是事件处理函数。既然可以添加事件监听,那么必然会有移除事件监听,用的是removEventListener参数与addEvener是一样的
而且通过addEventlistenr和removeListener我们可以动态的注册不同的事件处理程序

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<div id="div1">
			<p id="p1">捕获与冒泡的演示</p>
		</div>
	</body>
	<script type="text/javascript">
		var div1 = document.getElementById("div1");
		var p1=document.getElementById("p1");
		p1.addEventListener("click",click1);
		div1.addEventListener("click",click2);
		
		function click1(){
			alert("段落被单击了");
		}
		
		function click2(){
			
			alert("div被单击了");
		}
		
	</script>
</html>

运行效果:
在这里插入图片描述

在这个案例中,如果单击文字,先提示“段落被单击了”,然后提示“div被单击了”,因为div是p的父容器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: JavaScript是一种常用的编程语言,它可以用于实现网页动态效果、添加交互性、与服务器进行通信等。下面是一些常见的JavaScript经典案例: 1. 动态修改网页内容 使用JavaScript可以在网页加载后动态修改网页内容,比如修改标题、添加新的段落或者图片等。 2. 处理表单 JavaScript可以用来验证表单输入的内容是否符合要求,比如判断用户输入的密码是否足够复杂、电子邮件地址是否有效等。 3. 创建动态图表 使用JavaScript可以创建动态的图表,比如折线图、柱状图、饼图等,方便对数据进行可视化展示。 4. 在网页上显示时钟 使用JavaScript可以在网页上实现一个时钟,并且可以持续更新当前时间。 5. 创建滑动轮播图 使用JavaScript可以创建滑动轮播图,方便展示多张图片。 这只是JavaScript的一些基本用法,实际上JavaScript还有很多更复杂的应用场景。希望这些案例能对您有所帮助。 ### 回答2: JavaScript经典案例有很多,以下是其中几个: 1. 轮播图:轮播图是网页中常见的功能,通过JavaScript实现可以循环播放多张图片,并提供前进和后退按钮。通过修改元素的样式,控制图片的显示和隐藏,可以实现动态的切换效果。 2. 表单验证:表单验证是网页中常见的功能,通过JavaScript可以对用户输入的内容进行验证,如检查邮箱格式、密码强度等。通过正则表达式或条件判断,可以实现对用户输入的有效性判断,并提供相应的提示信息。 3. 下拉菜单:下拉菜单是网页中常用的导航方式,通过JavaScript可以实现菜单的展开和收起功能。通过给菜单添加事件监听器,当用户点击菜单时触发相应的行为,可以实现交互式的下拉菜单效果。 4. 星级评分:星级评分是常见的评价方式,通过JavaScript可以实现用户对某个内容进行星级评分。通过监听用户的鼠标移动和点击事件,可以根据用户的操作改变评分的显示效果,并将用户评分信息保存在后台。 5. 时钟倒计时:时钟倒计时是网页中常见的功能,通过JavaScript可以实现倒计时的效果,如活动截止时间倒计时、倒计时游戏等。通过获取当前时间戳和目标时间戳的差值,可以计算剩余时间并动态更新显示。 以上是JavaScript经典案例的几个例子,这些案例展示了JavaScript在网页中的丰富应用,它们可以提供更好的用户体验和交互效果。这些案例也只是冰山一角,JavaScript的应用场景还有很多,可以根据具体需求进行灵活的运用。 ### 回答3: JavaScript经典案例之一是实现一个简单的计算器。这个计算器可以接受用户的输入,并根据输入的操作符进行相应的计算并显示结果。 首先,我们需要创建一个HTML页面,包括一个显示结果的文本框以及一系列的数字和操作符按钮。接着,我们使用JavaScript来实现计算器的功能。 我们可以定义一个函数来处理用户点击按钮的事件。当用户点击数字按钮时,我们将该数字追加到结果文本框中。当用户点击操作符按钮时,我们将操作符保存起来,并清空结果文本框。 然后,我们需要定义另一个函数来处理用户点击等号按钮的事件。这个函数将根据保存的操作符,将结果文本框中的数值进行相应的计算,并将计算结果显示在结果文本框中。 最后,我们需要将这些函数与相应的按钮绑定起来。通过使用JavaScript的事件监听器,我们可以将每个按钮的点击事件与对应的处理函数相关联。 这样,我们就完成了一个简单的计算器的实现。用户可以通过点击数字按钮输入数字,通过点击操作符按钮来选择操作符,再点击等号按钮来获得计算结果。这个案例展示了如何使用JavaScript来实现一个交互性较强的功能,并对用户的输入进行处理和计算。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值