通过滚动主页获得不同的高度单击位置

Getting different height click position by scrolling main page

本文关键字:高度 单击 位置 滚动 主页      更新时间:2023-09-26

我正在尝试用jQuery创建一个差异游戏。基本上,几个图像堆叠在一起,绝对放置在一个容器中。在容器上方有一个带有徽标和菜单的页面标题,在图像容器上方大约需要 120px。

当有人点击图像中的某个区域时,我会在那里放置一个新的div,带有正确的(V)标记或错误的(红色X)。

我正在尝试使用以下代码获取元素内单击的位置(为了清楚起见,在单击事件中返回以下使用的事件变量 e):

var parentOffset = $(this).parent().offset();  
var topOffset = e.clientY - offset.top;

我的问题是,当我将页面向下滚动到页脚区域时,顶部的偏移量会发生变化,然后我没有将新标记div 放置在正确的高度。

当我滚动到页面顶部时,标记的位置正确。

我以前创建过这样的游戏,但不明白为什么突然计算错误:''似乎我得到了距离减去滚动高度,但不确定。

感谢您的见解,亚尼潘

我玩

了一下Firebug,看起来e.originalEvent.layerY正是你要找的。

无论屏幕滚动到何处,它始终显示单击对象中单击的绝对坐标。