JavaScript鼠标事件入门

news2024/11/14 23:06:19

🧑‍🎓 个人主页:《爱蹦跶的大A阿》

🔥当前正在更新专栏:《VUE》 、《JavaScript保姆级教程》、《krpano》、《krpano中文文档》

​ 

✨ 前言

        鼠标事件是Web开发中最为重要的交互方式之一。本文将带领大家入门常用的鼠标事件,包括点击、移动、悬停等,并通过具体示例介绍如何在JavaScript中使用它们。

        掌握鼠标事件可以让我们制作更优质的交互界面,为用户提供更流畅的体验。相信通过本文的学习,大家一定可以熟练使用各种鼠标事件来丰富网页交互。现在就让我们开始鼠标事件之旅吧!

✨ 正文

本文介绍最常用的鼠标事件,包括点击、移动、悬停等。

点击事件

  • mousedown - 鼠标按下时触发
  • mouseup - 鼠标按键释放时触发
  • click - 完成一次按下与释放时触发
    btn.onmousedown = () => alert('Down');
    btn.onmouseup = () => alert('Up');
    btn.onclick = () => alert('Click');

鼠标移动

跟踪鼠标移动:

document.onmousemove = event => {
  let x = event.clientX;
  let y = event.clientY;
};

 

悬停事件

  • mouseover - 鼠标移入元素范围内时触发
  • mouseout - 鼠标移出元素时触发
btn.onmouseover = () => alert('Mouse over me!'); 
btn.onmouseout = () => alert('Mouse left me!');

事件对象属性

事件对象包含鼠标信息:

  • clientX/clientY - 鼠标坐标
  • target - 事件目标元素
button.onclick = function(event) {
  // 鼠标相对于按钮的坐标
  let x = event.clientX - button.getBoundingClientRect().left;
  let y = event.clientY - button.getBoundingClientRect().top;
};

 

✨ 结语

        鼠标作为一种重要的输入方式,其事件为我们提供了丰富的交互可能性。本文详细介绍了点击、移动、悬停等常用鼠标事件及其在JavaScript中的用法。

        希望这篇博客可以增进大家对鼠标事件的理解,也可以用作查阅参考。如果出现任何问题,欢迎在评论区留言,我很乐意与大家进行技术交流。

  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1429988.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

分库分表 21 条法则,hold 住!

大家好~今天给大家分享分库分表的 21 条法则 我们结合具体业务场景,以t_order表为例进行架构优化。由于数据量已经达到亿级别,查询性能严重下降,因此我们采用了分库分表技术来处理这个问题。具体而言,我们将原本的单库…

[SWPUCTF 2021 新生赛]easyrce

经典的RCE题目看到这个eval可以想到使用系统命令执行 我们查看当前文件夹下的文件只有index.php 一般放在/目录下 我们查看 看到一个类似flag的文件 我们查看cat找到flag

顺序表和链表对应的经典算法

一,移除元素 思路:定义一个循环遍历数组,如果遇到的不是val就记录下来这个元素,如果不是就跳过 定义两个指针,一个用于保留非val元素,一个用于遍历nums int removeElement(int* nums, int numsSize, int …

基于WordPress开发微信小程序1:搭建Wordpress

2年前,在知乎上提问:多数公司为什么宁愿自研也不用wordpress二次开发建站? - 知乎 (zhihu.com),收到了,很多回答 自己打算做一下提升,便有了自己基于wordpress开发微信小程序的想法 项目定位 基于wordpre…

ruoyi(若依)(el-menu也可参考)菜单栏过长显示省略号才显示气泡

一、背景 若依前后端分离的版本,新版本中优化了菜单名称过长悬停显示标题,但是是悬浮所有长度大于5的标题。可以查看提交记录:https://gitee.com/y_project/RuoYi-Cloud/commit/99932d91c0144da9f34f5bb05683cc0b86303217 但是我希望是只悬浮…

centos6和centos7无网络环境下安装fontconfig,配置中文字体

以centos6为例 1、查看系统版本 cat /etc/redhat-release 2、访问https://vault.centos.org下载相关rpm包 找到对应系统版本 3、下载相应的rpm包上传到服务器 dejavu-fonts-common-2.33-1.el6.noarch.rpm dejavu-sans-fonts-2.33-1.el6.noarch.rpm fontconfig-2.8.0-5.el6.…

【Python小游戏】五子棋小游戏(完整代码)

文章目录 写在前面Tkinter简介五子棋小游戏游戏介绍程序设计运行结果注意事项写在后面写在前面 本期内容:基于tkinter开发一个五子棋小游戏 实验环境 python3.11及以上pycharmtkinterTkinter简介 Tkinter是Python中最常用的图形用户界面(GUI)库之一,用于创建窗口、对话框…

Day 1. 学习linux高级编程之Shell命令和IO

1.C语言基础 现阶段学习安排 2.IO编程 多任务编程(进程、线程) 网络编程 数据库编程 3.数据结构 linux软件编程 1.linux: 操作系统:linux其实是操作系统的内核 系统调用:linux内核的函数接口 操作流程&#xff…

深度学习入门笔记(二)神经元的结构

神经网络的基本单元是神经元,本节我们介绍神经元的结构。 2.1 神经元 一个神经元是由下面 5 部分组成的: 输入:x1,x2,…,xk。权重:w1,w2,…,wk。权重的个数与神经元输入的个数相同。偏移项:可省略。激活函数&#…

IEEE Proc.|基于知识图谱的少样本和零样本学习综述

本文作者:陈矫彦(曼彻斯特大学&牛津大学)、耿玉霞(浙江大学)、陈卓(浙江大学)、Jeff Z. Pan(爱丁堡大学)、何源(牛津大学)、 Ian Horrocks&am…

Linux的权限 + 【提权 | 粘滞位】

Linux权限的概念 Linux下有两种用户:超级用户(root)、普通用户。 超级用户:可以在linux系统下做任何事情,不受限制普通用户:在linux下做有限的事情。超级用户的命令提示符是“#”,普通用户的命…

C++迷宫游戏详解

个人主页:[PingdiGuo_guo] 收录专栏:[C干货专栏] 大家好呀,我是PingdiGuo_guo,今天我们来学习用C实现一个迷宫游戏。 目录 1.迷宫的具体步骤 1.1.迷宫的初始化 1.2.寻路算法 1.DFS算法 2.BFS算法 1.3.移动 2.总结 C迷宫游…

音视频数字化(数字与模拟-录音机)

之前我们说了【数字与模拟-照相机】照相机的数字化,今天聊聊录音机。 说录音机之前,必须说说留声机。留声机是爱迪生1877年宣布发明成功的,研发过程相当复杂,但原理是简单的。 声音的本质是“波”,是物体振动产生的。以乐器为例,打击乐就是敲击(鼓、钹、木鱼、木琴、三…

向刻苦耐劳乐观向上的青年致敬

今晨互联网上的国际时事新闻报道,显得越来越真假难辨;特别是对俄乌战争、以巴战争、中美俄日朝印越和欧盟各国关系的新闻报道,可谓朝三暮四,一日多变,令人不知谁家的报道可信,便绕道行,不议为妙…

ES6-对象的解构赋值

一、区别一下数组的解构赋值 - 对象的解构与数组有一个重要的不同。数组的元素是按次序排列的,变量的取值由它的位置决定;而对象的属性没有次序,变量必须与属性同名,才能取到正确的值二、说明 - 对象的解构赋值的内部机制&#…

XML详解

文章目录 XML简介语法约束DTDSchema 解析Jsoup使用对象详解JsoupDocumentElementsElementNode XML 简介 概述:Extensible Markup Language 可扩展标记语言 可扩展:标签都是自定义的。 功能 数据存储:XML 可以用来存储结构化数据&#xff0c…

mysql-FIND_IN_SET查询优化

优化前 SELECTuser_id,user_name,real_name,PASSWORD,real_org_id,real_org_name,real_dept_id,real_dept_name, STATUS FROMsys_user WHEREis_del 0 AND find_in_set( lilong, login_user_account ) 优化后 SELECTuser_id,user_name,real_name,PASSWORD,real_org_id,real…

虚拟机Windows Server 2016 安装 MySQL8

目录 一、下载MySQL8 1.下载地址: 2.创建my.ini文件 二、安装步骤 第一步:命令窗口 第二步:切换目录 第三步:安装服务 第四步:生成临时密码 第五步:启动服务 第六步: 修改密码 三…

《A++ 敏捷开发》- 6 估算软件规模

为什么要估规模 规模可以帮我们: 依据历史数据策划,例如估算工作量、工期。归一(Normalize)不同项目作比较。知道现在水平。 依据历史数据策划先把项目分成组件,参考以往类似的组件所花工作量,估算整个项目的总工作量。规模大小…