鼠标点击谷歌地图api v3和angularJS获取坐标

时间:2015-03-31 07:56:11

标签: angularjs google-maps google-maps-api-3

$scope.map = {
    center: {
        latitude: 36,
        longitude: -80
    },
    zoom: 3,
    showOverlay: true,
    events: {
        "click": function ()
        { console.log(" latitude: " + $scope.map.center.latitude + "longitude: " + $scope.map.center.longitude); }
    },
    options: {
        streetViewControl: false,
        panControl: false,
        maxZoom: 20,
        minZoom: 1,

    }
}

所以我有一个问题是使用angularJS和google map api v3获取鼠标点击事件的经度和纬度。这是我的控制器的一个例子。我已经在地图上添加了一个活动,以便获得坐标,但现在我得到的只是中心的坐标。我不知道如何获得我的鼠标点击事件的确切坐标。谢谢你的帮助。

3 个答案:

答案 0 :(得分:11)

您必须实现一个捕获点击并获取位置的侦听器:

google.maps.event.addListener(map, 'click', function(event) {
    alert(event.latLng);  // in event.latLng  you have the coordinates of click
});

选中此DEMO FIDDLE

答案 1 :(得分:1)

Angular和google maps v3中的点击事件会返回三个对象:instance,eventName,handler。

第三个有 latLong 和lat(),lng()函数。

所以你可以通过handler [0] .latLng.lat()获得纬度。

还有一个有用的像素对象,其中点击点的位置属性为x,y。

答案 2 :(得分:0)

如果你使用角度,为什么不使用它的地图指令。 ngMap