使用高德地图拖拽的marker的时候,发现拖拽的定位点总会有偏移,最后发现原因是:程序获取的的位置是在鼠标箭头的位置,而不是marker定位的小叉叉上所指位置的经纬度,所以会有偏差。
![](https://img.haomeiwen.com/i15421611/ed74a69704ac2403.png)
解决方法如下:
AMap.event.addListener(marker,'dragging',function(e){
varlat=e.lnglat.lat,
lng=e.lnglat.lng;
marker.setPosition(new AMap.LngLat(lng,lat));
});
拖动过程中,获取当前鼠标的位置,然后把marker定位到鼠标的位置。
这样就解决了这个bug。
网友评论