获取多个标记的经度和纬度(onclick)

时间:2013-11-30 20:24:38

标签: google-maps events google-maps-api-3 google-maps-markers

我的地图中有多个标记。 如何创建多个标记的监听器并获取其经度和纬度? 当我在一个标记处尝试该事件监听器时,它可以工作。但是当我用我的多个标记尝试该事件监听器时,它不起作用。 这是我的代码:

var jakarta = new google.maps.LatLng(-6.211544, 106.845172);

        var shelterpoint = [];
        var shelterName = [];

        <?php while ($row = mysql_fetch_array($result)) { ?>
            shelterpoint.push(new google.maps.LatLng(<?=$row['Latitude']?>, <?=$row['Longitude']?>));
            shelterName.push("<?=$row['Shelter_Name']?>");
        <?php } ?>

        var markers = [];
        var iterator = 0;

        var map;

        function initialize() {
          var mapOptions = {
            zoom: 12,
            center: jakarta
          };

          map = new google.maps.Map(document.getElementById('map_canvas'),
                  mapOptions);




            drop();     

           google.maps.event.addListener(marker, "click", function (event) {
                alert(this.position);
            });


        }

        function drop() {
          for (var i = 0; i < shelterpoint.length; i++) {
            setTimeout(function() {
              addMarker();
            }, i * 10);
          }
        }


        function addMarker() {


          markers.push(new google.maps.Marker({
            position: shelterpoint[iterator],
            map: map,
            draggable: false,
            animation: google.maps.Animation.DROP,
            title:shelterName[iterator]
          }));
          iterator++;
        }




        google.maps.event.addDomListener(window, 'load', initialize);

1 个答案:

答案 0 :(得分:-1)

请参阅以下链接。

http://jsfiddle.net/xJ26V/1/

  var mapOptions = {
                 center: new google.maps.LatLng(-33.92, 151.25),
                  zoom: 10,
                 mapTypeId: google.maps.MapTypeId.ROADMAP

             };