通过JS 获取Mouse Position(鼠标坐标)的代码

获取鼠标坐标是JavaScript中的常见需求之一,可以通过鼠标事件对象获取鼠标相对于页面的坐标位置。

以下是获取鼠标位置的代码:

document.addEventListener('mousemove', (event) => {
  const mouseX = event.clientX;
  const mouseY = event.clientY;
  console.log(`Mouse position: (${mouseX}, ${mouseY})`);
});

该代码会监听文档上的mousemove事件,并使用事件回调函数来获取鼠标的的坐标位置。事件回调函数中的event参数包含了事件的相关信息,其中包含了鼠标的坐标位置。

在事件处理函数中, event.clientXevent.clientY分别代表鼠标相对于浏览器视口的 x 和 y 坐标位置。可以将这些值用于更改 DOM 元素的位置或进行其他操作。

另一个示例可以在页面中使用单独的函数来获取鼠标位置,并将其作为参数传递给其他函数接受,代码如下:

function getMousePos(event) {
  const rect = canvas.getBoundingClientRect();
  const scaleX = canvas.width / rect.width;
  const scaleY = canvas.height / rect.height;

  const mouseX = (event.clientX - rect.left) * scaleX;
  const mouseY = (event.clientY - rect.top) * scaleY;

  return { x: mouseX, y: mouseY };
}

// 监听canvas鼠标的移动事件
canvas.addEventListener('mousemove', function (event) {
  const mousePos = getMousePos(event);
  console.log(`Mouse position: (${mousePos.x}, ${mousePos.y})`);
});

在这个示例中,我们首先获取了鼠标相对于canvas的坐标位置(即使用canvas.getBoundingClientRect() 获取画布的位置),将其缩放到绘图区域(canvas)的大小,并将x,y坐标封装在一个对象中返回。然后我们只需将返回的对象传递给其他函数来使用鼠标位置。

以上是如何使用JS获取鼠标位置的代码完整攻略,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:通过JS 获取Mouse Position(鼠标坐标)的代码 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • JavaScript版DateAdd和DateDiff函数代码

    下面是详细讲解“JavaScript版DateAdd和DateDiff函数代码”的完整攻略: 一、概述 在Web开发中,常常需要对日期进行操作。但是JavaScript原生的Date对象提供的方法较少,因此我们可以自己编写DateAdd和DateDiff函数来方便地进行日期计算。 DateAdd函数用于计算某个日期加上一定时间单位后的日期值,而DateDif…

    JavaScript 2023年5月27日
    00
  • Android 混淆代码详解及实例

    Android 混淆代码详解及实例 Android中的混淆代码(ProGuard)是一个非常有用的工具,它可以帮助开发者混淆、压缩和优化代码,使得攻击者很难对应用程序进行反向工程或者逆向破解,有效保护您的应用程序的安全性。 混淆代码的作用 混淆代码是为了保护您的应用程序的安全性。在Android系统中,所有的应用程序都是以dex格式存储。Dex是一种基于Ja…

    JavaScript 2023年6月11日
    00
  • 正则表达式创建方式的区别及编写简单的正则方式(js学习总结)

    让我来详细讲解一下“正则表达式创建方式的区别及编写简单的正则方式”的攻略。 区别 首先,我们需要了解正则表达式创建方式的区别。常见的正则表达式创建方式有以下三种: 字面量方式:使用斜杠(/)将正则表达式包裹起来,例如:/abc/ 构造函数方式:使用new RegExp()构造函数来创建正则表达式对象,例如:new RegExp(‘abc’) 工厂函数方式:使…

    JavaScript 2023年6月10日
    00
  • JavaScript面向对象程序设计创建对象的方法分析

    JavaScript面向对象程序设计创建对象的方法分析 什么是对象? 对象是一种数据类型。它可以用来存储一组相关的数据,并且允许我们定义相关的方法来访问和操作这些数据。对象由多个属性组成,每个属性都有一个名称和对应的值。 如何创建对象? 在JavaScript中,有多种创建对象的方式。下面分别介绍这些方法。 1. 对象字面量 对象字面量是最常用的创建对象的方…

    JavaScript 2023年5月27日
    00
  • JavaScript 短路运算的实现

    JavaScript 短路运算的实现 在 JavaScript 中,短路运算又称为逻辑运算符的“短路求值”,它可以用于简化代码并提高效率。本文将详细讲解JavaScript短路运算的实现。 什么是短路运算? 短路运算是指当使用逻辑运算符 && 和 || 时,如果左手边的逻辑表达式已经能够确定最终的结果,则不再执行右侧的表达式。如果左侧的表达式…

    JavaScript 2023年6月10日
    00
  • JS传值出现中文参数乱码的解决方法

    JS传值出现中文参数乱码的解决方法 当我们在JS中传递参数中包含中文时,有时会出现乱码的问题。这篇攻略将介绍如何解决这个问题。 方法一:使用encodeURIComponent()和decodeURIComponent() 通过使用JavaScript内置的encodeURIComponent()函数对字符串进行编码,再通过decodeURIComponen…

    JavaScript 2023年5月19日
    00
  • JavaScript中Function详解

    JavaScript中Function详解 JavaScript中的函数是一种可重用代码块,它们可以带有参数并且可以返回值。在JavaScript中,函数是第一类对象,意味着它们可以像其他数据类型一样被赋值、传递和操作。 函数声明和调用 JavaScript中可以用 function 关键字定义一个函数。函数定义包括函数名、参数和函数体。下面是一个函数 ad…

    JavaScript 2023年5月27日
    00
  • Javascript开发包大全整理

    Javascript开发包大全整理 如果你是Javascript开发者,那么你一定会使用一些Javascript开发包,它们能够帮助你提高开发效率,降低开发难度。 常用的Javascript开发包 以下为常用的Javascript开发包: jQuery jQuery 是一个Javascript库,可以用于简化Javascript代码编写,提高页面操作效果。 …

    JavaScript 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部