Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript坐标显示为大于图像宽度和高度_Javascript_Jquery_Javascript Events - Fatal编程技术网

JavaScript坐标显示为大于图像宽度和高度

JavaScript坐标显示为大于图像宽度和高度,javascript,jquery,javascript-events,Javascript,Jquery,Javascript Events,我试图在鼠标悬停在图像左上角以像素为单位的图像上时获取鼠标的位置。我目前正在使用pageX和pageY事件属性,但返回的值大于图像本身的宽度和高度 var getImgCoord = function(e) { var x = e.pageX, y = e.pageY; console.log(x + ' | ' + y); } $('.featuredImg').mousemove(function() { getImgCoord(event); }); 任何帮助都将

我试图在鼠标悬停在图像左上角以像素为单位的图像上时获取鼠标的位置。我目前正在使用pageX和pageY事件属性,但返回的值大于图像本身的宽度和高度

var getImgCoord = function(e) {
  var x = e.pageX,
      y = e.pageY;
  console.log(x + ' | ' + y);
}
$('.featuredImg').mousemove(function() {
  getImgCoord(event);
});

任何帮助都将不胜感激。

pageX和pageY是相对于文档左上角的坐标,而不是您的图像本身(名称已经说明了这一点)

您需要从元素中减去偏移:

$('.featuredImg').mousemove(function(e) {
  var x = e.pageX - $(this).offset().left,
      y = e.pageY - $(this).offset().top;
  console.log(x + ' | ' + y);
});

pageX和pageY是相对于文档左上角的坐标,而不是图像本身(名称已经说明了这一点)

您需要从元素中减去偏移:

$('.featuredImg').mousemove(function(e) {
  var x = e.pageX - $(this).offset().left,
      y = e.pageY - $(this).offset().top;
  console.log(x + ' | ' + y);
});


抱歉,图片左上角,我编辑了上面的问题。你试过
clientX
clientY
?我试过了,clientX和clientY产生了相同的结果。抱歉,图片左上角,我编辑了上面的问题。你试过
clientX
clientY
?我试过了,clientX和clientY产生了相同的结果。getImgCoord函数的作用域是什么$(这)可能是窗口对象(或getImgCoord当前的全局范围),因此您的代码无法工作!getImgCoord函数的作用域是什么$(这)可能是窗口对象(或getImgCoord当前的全局范围),因此您的代码无法工作!