将点击事件添加到Google地图中的标记

时间:2012-12-12 07:18:57

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

我已在我的网站中集成了Google地图,并在其上设置了标记

当我点击标记时,我想获得与我所设置的特定纬度和经度相同的纬度和经度。

对于测试,我设置了两个标记。

每当最后一次设置标记的纬度和经度显示在控制台中时,我点击标记。

我该如何解决这个问题?

for(var gMarker = 0; gMarker < records.length ; gMarker++){
          var gMarkerThis = records[gMarker].LatLng;
          var marker = new google.maps.Marker({
            position: new google.maps.LatLng(gMarkerThis[0], gMarkerThis[1]),
            map:      map,
            title:    'Test'
          });  

          google.maps.event.addListener(gMarkerArray, 'click', function() {
             console.log(marker.position , marker.position.lat() , marker.position.lng());
          });
        }

1 个答案:

答案 0 :(得分:2)

封闭怎么样?

 for(var gMarker = 0; gMarker < records.length ; gMarker++){
      var gMarkerThis = records[gMarker].LatLng;
      var marker = new google.maps.Marker({
          position: new google.maps.LatLng(gMarkerThis[0], gMarkerThis[1]),
          map:      map,
          title:    'Test'
      });  

      (function(Marker) {
          google.maps.event.addListener(gMarkerArray, 'click', function() {
              console.log(Marker.position , Marker.position.lat() , Marker.position.lng());
          });
       }(marker));
 }

我不知道gMarkerArray是什么,但我会认为它是循环中的当前标记,因为它应该是什么?