我想在google map api v3中检索标记的顶部和左侧位置(以像素为单位)。如何才能做到这一点?我知道使用fromLatLngToDivPixel()
有一些提示,但我可以知道它是如何工作的吗?示例
答案 0 :(得分:5)
你的意思是div内的像素坐标?看http://qfox.nl/notes/116
overlay = new google.maps.OverlayView();
overlay.draw = function() {};
overlay.setMap(map);
var point = overlay.getProjection().fromLatLngToContainerPixel(latLng);
或
var point = overlay.getProjection().fromLatLngToDivPixel(latLng);
确实很难看。在v2中更容易,其中这些方法是GMap2
对象的直接方法。 google api v3的另一个缺陷!
答案 1 :(得分:1)
如果您遇到覆盖undefined
的问题,那是因为该对象是在地图idle
之后创建的。
最好在事件监听器中调用它,这里有完整的解释https://stackoverflow.com/a/6657723/4026345