gpt4 book ai didi

javascript - google maps DrawingManager绘制的矩形不触发mousemove事件

转载 作者:行者123 更新时间:2023-11-30 07:44:12 24 4
gpt4 key购买 nike

我想:

  • 在谷歌地图上绘制矩形
  • 至多在矩形上
  • 鼠标移动时显示当前位置

所以,我想出了这个代码 - http://jsfiddle.net/mark69_fnd/vBwf6/4/我订阅了 DrawingManager 实例的 rectanglecomplete 事件,以便处理之前的矩形,保存对新矩形的引用并订阅矩形上的 mousemove 事件。

问题是 mousemove 事件永远不会被触发。

我做错了什么以及如何解决?

谢谢。

最佳答案

这是一个函数,它通过与 map 容器左上角相关的像素偏移量给出 GPS 坐标。

function getLatLngByOffset( map, offsetX, offsetY ){
var currentBounds = map.getBounds();
var topLeftLatLng = new google.maps.LatLng( currentBounds.getNorthEast().lat(),
currentBounds.getSouthWest().lng());
var point = map.getProjection().fromLatLngToPoint( topLeftLatLng );
point.x += offsetX / ( 1<<map.getZoom() );
point.y += offsetY / ( 1<<map.getZoom() );
return map.getProjection().fromPointToLatLng( point );
}

在 map 的 div 元素上添加 'onmousemove' 事件监听器,然后传递与 div 左上角相关的鼠标位置。

更新:DEMO (在 Chrome 上测试)

关于javascript - google maps DrawingManager绘制的矩形不触发mousemove事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10281039/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com