获取Google Maps Lat和Long坐标

时间:2011-10-27 08:15:53

标签: java google-maps maps accessor

我正在使用以下代码获取我的Google地图标记的坐标,因为它的位置已更改

    google.maps.event.addListener(marker, 'drag', function() {
        lat = Math.round(marker.position.Ma * 1000) / 1000;
        lng = Math.round(marker.position.Na * 1000) / 1000;
        [.. using lat and long]
    });

此代码以前工作正常。谷歌有时会改变名称Ma和Na的位置变量(不知道为什么会这样做)。

所以我使用正确的变量来获得lat和long,还是有另一种方法呢?

2 个答案:

答案 0 :(得分:2)

试试这个:

lat = Math.round(1000 * marker.getPosition().lat()) / 1000;
lng = Math.round(1000 * marker.getPosition().lng()) / 1000;

听起来你正在使用他们的私有变量而不是访问器方法。

答案 1 :(得分:1)

我使用了下面的drag事件给了一个带有latLng的MouseEvent对象:

google.maps.event.addListener(marker, 'drag', function(event) {
    lat = Math.round(event.latLng.lat() * 1000) / 1000;
    lng = Math.round(event.latLng.lng() * 1000) / 1000;
    [.. using lat and long]
});