我想使用jQuery来获取图像上单击事件的X/Y坐标.坐标应该是相对于图像的,而不是相对于整个页面的

推荐答案

您可以使用pageX and pageY来获取鼠标在窗口中的位置.还可以使用jQuery的offset来获取元素的位置.

因此,距离图像左侧的距离应为pageX - offset.left,距离图像顶部的距离应为pageY - offset.top.

下面是一个例子:

$(document).ready(function() {
  $('img').click(function(e) {
    var offset = $(this).offset();
    alert(e.pageX - offset.left);
    alert(e.pageY - offset.top);
  });
});

我做了一个live example herehere是来源.

要计算距离底部或右侧多远,必须使用jQuery的widthheight方法.

Jquery相关问答推荐

从克隆的输入中读取数据属性,返回初始输入的值

我需要在上一个表格单元格中显示计算结果

即使我使用 [FromBody] C# 从视图(Ajax)发送请求时在控制器中收到 NULL 对象

如何在 jquery 中切换 attr()

无法使用 HTML 设置未定义的 jQuery UI 自动完成的属性_renderItem

foreach for JSON 数组,语法

递归循环遍历对象(树)

提醒未保存的表单更改

jQuery javascript 正则表达式 将
替换为 \n

jQuery.parseJSON 单引号与双引号

用按钮切换显示/隐藏div?

jQuery/JavaScript 碰撞检测

使用 jQuery 将行添加到表的 tbody

如何检测是否安装了 Flash,如果没有,显示一个隐藏的 div 通知用户?

与 C# HashSet 等效的 JavaScript 是什么?

延迟jquery悬停事件?

使用 jQuery 比较两个 Javascript 对象数组

带有回调ajax json的jQuery自动完成

更改 div 的内容 - jQuery

为什么要定义一个匿名函数并将 jQuery 作为参数传递给它?