检测鼠标单击位置

时间:2011-05-27 16:07:17

标签: javascript html events mouseevent

我想要实现的是制作DIV并在其上显示世界地图图像或作为背景。&当用户点击地图上的某个地方时,我会抓住鼠标点击位置

然后我有些如何将鼠标的X,Y线转换为经度,纬度,然后运行AJAX来显示一些数据。

我的问题是:

  • 如何使用JavaScript获取鼠标点击位置
  • 如何将全局点击位置转换为DIV的图层相对X,Y坐标

4 个答案:

答案 0 :(得分:4)

答案 1 :(得分:2)

在HTML中设置onMouseMove事件:

<div onMouseMove="getPositions();"
style="width:200px;height:100px"></div>

和javascript功能:

function getPositions(ev) {
if (ev == null) { ev = window.event }
   _mouseX = ev.clientX;
   _mouseY = ev.clientY;
}

答案 2 :(得分:0)

除非您有理由从头开始,我建议Google Maps Api

您会注意到Map对象有一个click事件,您可以绑定一个回调函数,该回调函数接收包含lat / long coords的MouseEvent。查看this example

答案 3 :(得分:0)

在事件处理程序中,您可以通过mouseEvent Args获取它。

摘自http://msdn.microsoft.com/en-us/library/bb404721.aspx -

function onMouseLeftButtonUp(sender, mouseEventArgs)
{
    // Return a Point object representing the x- and y-coordinates of the current mouse position
    // relative to the reference object.
    var pt = mouseEventArgs.getPosition(sender.findName("referenceObject"));

    // Display the current mouse position.
    sender.findName("Status").text = pt.x + " : " + pt.y;
}