获取画布中的鼠标位置[重复]

2023-11-23

有没有办法获得鼠标的位置<canvas>标签?我想要相对于右上角的位置<canvas>,而不是整个页面。


接受的答案不会每次都有效。如果不使用相对位置,属性 offsetX 和 offsetY 可能会产生误导。

您应该使用该功能:canvas.getBoundingClientRect()来自画布 API。

  function getMousePos(canvas, evt) {
    var rect = canvas.getBoundingClientRect();
    return {
      x: evt.clientX - rect.left,
      y: evt.clientY - rect.top
    };
  }
  canvas.addEventListener('mousemove', function(evt) {
    var mousePos = getMousePos(canvas, evt);
    console.log('Mouse position: ' + mousePos.x + ',' + mousePos.y);
  }, false);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

获取画布中的鼠标位置[重复] 的相关文章

随机推荐

  • MySQL - 将两列拆分为两个不同的行

    如果这是一个愚蠢的问题 我不知道要创建这个抱歉 我有一个表 两个团队和总观察 稍后我将在不同的地方使用此信息 所以我的想法是将这两列连接在一列中 但两个不同的行 HomeTeam AwayTeam Totalwatch A B 100 A
  • 反序列化包含字典的对象列表

    我见过很多例子 似乎表明我所做的事情应该有效 但无论出于何种原因 它都不起作用 我正在尝试反序列化对象的集合 其中一个属性是字典 如下所示 class Program static void Main string args var jso
  • min - 子项设置为位置的高度:绝对

    我有一个容器 div 其中一个子 div 设置为相对于其父级的绝对位置 容器 div 有其最小高度设置 但是当子 div 的高度超出父级的高度时 父级不会拉伸 这是由于孩子的绝对定位所致 有什么想法可以让父母随着孩子身高的增加而伸展身体吗
  • 使用命令行工具将 JSON 数组拆分为多个文件

    假设我们有一个长度为 5 的 JSON 数组 我们想使用 Linux 命令行工具将该数组拆分为多个长度为 2 的数组 并将分组的项保存到不同的文件中 我尝试使用jq and split工具 我对任何可以从 bash 脚本执行的方法都很满意
  • 仅从 Twitter API 请求地理标记状态

    我如何要求 twitter API 只提供地理标记状态 我目前正在过滤 但更加 友好 会更有意义 似乎你应该能够用流 API 和位置过滤器 只需将边界框设置为覆盖整个地球即可 正如跟踪参数一样 查询受跟踪限制 如跟踪限制中所述 和访问角色
  • 如何使用 BigQuery 补丁?

    BigQuery API 文档中有一个名为 patch 的方法 我希望我可以使用它来更改现有表的架构 不幸的是 bq 不支持它 但根据他们的网站 你可以尝试一下https developers google com bigquery doc
  • 在活动之间从列表视图传递数据到另一个活动

    我正在尝试将数据从这个主要活动传递到另一个活动 我成功地在活动之间发送数据 就像从编辑文本到下一个活动的数据一样putExtra and GetExtra方法并作为意图传递 但我在这项特定任务中面临挑战 将数据从列表视图发送到普通活动 数据
  • 将函数应用于 pandas Python 中的每一行时出现数据转换错误

    我在 python 的 pandas 中有一个数据框 类似于这样的东西 contest login count contest participation count ipn ratio 0 1 1 0 000000 1 3 3 0 083
  • Linux 中的“find -exec”shell 函数

    有没有办法得到find执行我在 shell 中定义的函数 例如 dosomething echo Doing something with 1 find exec dosomething 其结果是 find dosomething No s
  • 在android中实现徒手裁剪

    我正在尝试使用画布在 Android 中实现徒手裁剪 我用drawPath并将其存储在列表中并将其绘制在画布路径绘图中 像这样 但现在我想用这段代码使该路径中的所有像素都位于侧面区域 但我不知道该怎么做 public Bitmap getB
  • 文件上传作为带有其他字段的表单的一部分

    我有一个 ASP NET MVC 网站 我需要一个页面 用户必须在其中输入多个字段 包括图像文件 我可以找到很多很多使用 MVC 上传文件的参考资料 但他们不会将文件作为包含其他字段的表单的一部分上传 理想情况下 字段和文件将发送到单个控制
  • 单击启动器图标时恢复上次活动

    正如我所看到的 当单击启动器图标时 大多数应用程序都会恢复上次活动 然而 这似乎不是默认行为 在我的应用程序启动器活动中 单击启动器图标时总是启动 当单击启动器图标并且应用程序已经运行时 如何配置我的应用程序以恢复上次活动 Problem
  • python 检查序列中的位是真还是假

    我想知道序列中的某个位是 1 还是 0 真或假 如果我有 11010011 的一些子序列 我如何检查第四个位置是 True 还是 False example 10010101 4th bit gt False 10010101 3rd bi
  • 为派生类提供模板专业化的最简单方法

    我有以下场景 class my base class my derived public my base template
  • Collections.binarySearch() 与 List indexOf()

    我有超过 37K 项的列表 并且我已经实施了hashCode equals 所以我想知道Collections binarySearch 可以帮助提高性能并且比indexOf method 如果您的收藏已排序 binarySearch 将是
  • JavaScript 中的双感叹号运算符和 Boolean() 有什么区别? [复制]

    这个问题在这里已经有答案了 我知道 variable将变量转换为布尔值和函数Boolean 根据 ecma262 规范 还将通过调用执行类型转换ToBoolean value 我的问题是 有什么区别 是 性能比 Boolean 更好 它们是
  • 我是否必须在每个页面添加“<%@ Register assembly=”?

    我升级了 DevExpress 组件 但在我的应用程序中我必须更改每个组件 是的 看http we
  • C# 中的静态类

    在回答这个问题时 https stackoverflow com questions 352317 c coding question 352327 这让我想知道 将静态类视为等同于实现单例模式的非静态类实例是否存在任何危险 对我来说唯一显
  • 控件的自定义设计器

    我有一个派生自 SplitContainer 的自定义类 namespace Builder Components public partial class ProjectSidebar SplitContainer public Proj
  • 获取画布中的鼠标位置[重复]

    这个问题在这里已经有答案了 有没有办法获得鼠标的位置