使用高德地圖拖拽的marker的時(shí)候,發(fā)現(xiàn)拖拽的定位點(diǎn)總會(huì)有偏移,最后發(fā)現(xiàn)原因是:程序獲取的的位置是在鼠標(biāo)箭頭的位置,而不是marker定位的小叉叉上所指位置的經(jīng)緯度庶诡,所以會(huì)有偏差砂心。
image.png
解決方法如下:
AMap.event.addListener(marker,'dragging',function(e){
varlat=e.lnglat.lat,
lng=e.lnglat.lng;
marker.setPosition(new AMap.LngLat(lng,lat));
});
拖動(dòng)過(guò)程中绣硝,獲取當(dāng)前鼠標(biāo)的位置拓提,然后把marker定位到鼠標(biāo)的位置停蕉。
這樣就解決了這個(gè)bug。