我之前问过这个问题,回复告诉我我知道我需要做什么但没有提供示例,所以我还没有找到解决方案。
我有一个名为“容器”的初始 div,它是height:100% width:100%
俄克拉荷马州地图的图像。这个想法是,当用户点击地图的某个部分(对于这个例子,panhandle),div 切换到一个 div 是 panhandle 图像。我通过知道鼠标点击时的像素位置来确定用户点击的位置。
问题是,不同尺寸屏幕的像素值不同。有人告诉我,为了根据用户的屏幕尺寸来计算用户点击的位置,我需要:
在比较之前缩放每个值。将每个 x 乘以您的规范宽度并除以实际宽度,并对 y 和高度执行相同操作。
我对“将每个 x 乘以标准宽度并除以实际宽度”感到困惑。我继续尝试缩放。我发现panhandle的第一个边缘距离屏幕左侧3.1%,最远边缘距离屏幕左侧35.7%。我有以下代码:
$("#container").click(function(e)
{
var x = event.pageX;
var y = event.pageY;
// Variables for area of pan handle
/* These variables do not seem to work yet */
var xScale1 = 0.031*x;
var xScale2 = 0.357*x;
if(x >= xScale1 && x "less-than"= xScale2)
{
alert("You clicked the panhandle!");
}
}
当我在panhandle的水平范围内单击时,这应该会弹出一个警报,但没有任何反应。我确实注意到我没有将任何值除以“实际宽度”。有人可以提供一个如何“将每个 x 乘以您的规范宽度并除以实际宽度”的示例吗?