JavaScript鼠标事件详解与跟随效果实战

作者:窗边听雨

时间:2026-10-26

浏览:651

本文系统讲解JavaScript中的鼠标事件,涵盖单击、双击、按下、松开及移入移出等常用事件。重点区分onmouseover与mouseenter的区别,并通过完整代码实现鼠标跟随图片的实战案例,帮助开发者掌握事件监听与DOM操作技巧。

文章目录

一、鼠标点击事件

1.onclick单击事件

当鼠标在元素上单击时触发该事件处理函数。

<input type="button" id="bt" value="点击">
<script>
//找到按钮并设置点击事件
   document.getElementById("bt").onclick  = function (){
        //被点击后弹出弹出框
       alert("按钮被点击")
   }
</script>

2.ondblclick双击事件

当鼠标在元素上双击时触发该事件处理函数。

<input type="button" id="bt" value="点击">
<script>
//找到按钮并设置双击击事件
   document.getElementById("bt").ondblclick  = function (){
        //被点击两次后弹出弹出框
       alert("按钮被点击")
   }
 </script>

3. onmousedown鼠标按下事件

当鼠标按键被按下后触发该事件处理函数。

4. onmouseup鼠标松开事件

当鼠标按键被松开后触发该事件处理函数。

案例演示如下:

一、鼠标点击事件

二、鼠标移动事件

1.onmouseover移入事件

当鼠标指针移动到指定HTML标签元素上时触发的事件。

2.onmouseout移出事件

当鼠标指针从HTML标签元素上移开时触发的事件。

3.onmousemove移动事件

只要鼠标指针在元素内部移动就会持续触发该事件。

4.mouseenter移入事件

功能与onmouseover类似,但mouseenter事件只在指针进入目标元素时触发一次,不会因子元素移动而重复触发。

5.mouseleave移出事件

功能与onmouseout类似,但mouseleave事件只在指针离开目标元素时触发一次,不会因子元素移动而重复触发。

一、鼠标点击事件

三、案列:

效果图如下:

一、鼠标点击事件

完整代码如下:

<html>
	<head>
		<meta charset="utf-8">
		<title>鼠标跟随</title>
		<style type="text/css">
			div{
				position: relative;
				width: 360px;
				height: 511px;
			}
			img{
				width: 360px;
				border-radius: 5px;/* 设置圆角 */
			}
			p{
				width: 100px;
				height: 30px;
				position: absolute;/* 绝对定位 */
				left: 0;
				top: 0;
				background-color: rgba(0,0,0,0.666);
				color: white;
				padding: 10px;
				display: none;/* 隐藏 */
				pointer-events: none;/* 不对鼠标事件作出反应 */
			}
		</style>
	</head>
	<body>
		<div id="div_1">
			<img src="img/1.jpg" alt="">
			<p>
				<strong>简介</strong>
				<span>买建材上京东!京东</span>
			</p>
		</div>
		<script type="text/javascript">
			//获取div标签
			var div_1 = document.getElementById("div_1");
			//给div_1绑定事件:onmouseover:鼠标移入事件
			div_1.onmouseover = function(){
				//将p标签显示出来,故需要将display的值设置为block
				document.querySelector("p").style.display = "block";
			}
			//onmouseout:鼠标从元素上移开时触发的事件
			div_1.onmouseout = function(){
				将p标签显示出来,故需要将display的值设置为none
				document.querySelector("p").style.display = "none";
			}
			//onmousemove:鼠标从元素上移动时触发的事件
			div_1.onmousemove = function(){
				document.querySelector("p").style.left =event.offsetX + "px";
				document.querySelector("p").style.top =event.offsetY + "px";
			}
		</script>
	</body>
</html>

总结

到此这篇关于JavaScript鼠标移动事件以及实战案例的文章就介绍到这了,更多相关JS鼠标移动事件内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章