如何将按钮链接到谷歌地图标记?

时间:2012-05-31 05:29:09

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

我正在尝试使用谷歌地图创建自己的地图。

我想创建一个显示地图上所有现有标记的列表。当用户点击列表中的一个按钮/链接时,相应的标记将居中并且将显示其infoWindow,即与用户点击标记的效果相同。

我尝试了很多解决方案,但我没有办法解决这些问题。有人可以为我提供一个简单的解决方案吗?提前谢谢!

我现有的代码如下,

  google.maps.event.addDomListener(window, 'load', function() {
      var map = new google.maps.Map(document.getElementById('map'), {
          center: new google.maps.LatLng(19.642588,151.171875),
          mapTypeId: google.maps.MapTypeId.ROADMAP,
          mapTypeControl: false
      });
      var infoWindow = new google.maps.InfoWindow;
      var onMarkerClick1 = function() {
      var marker = this;     
      infoWindow.setContent('content of infowindow');
      infoWindow.open(map, marker);
  };
  var marker1 = new google.maps.Marker({
      map: map,
      position: new google.maps.LatLng(19.642588,151.171875),
  });
  google.maps.event.addListener(marker1, 'click', onMarkerClick1);

1 个答案:

答案 0 :(得分:1)

这不会使地图居中,但会移动以使整个气球可见

http://econym.org.uk/gmap/example_map2.htm


就像我能得到它一样简单。是的,请使用GMarker等。

请勿在标题<script src="http://maps.google.com/maps? ...

中忘记这一点

你需要包含

的html
 <div id="map" style="width: 550px; height: 450px"></div>
 <div id="side_bar"><a href="javascript:myclick(marker)">Marker One</a><br /></div>

然后是javascript

    var map = new GMap2(document.getElementById("map"));
    map.setCenter(new GLatLng(19.642588, 151.171875), 8);

    var point = new GLatLng(19.642588, 151.171875);
    var marker = new GMarker(point);

    GEvent.addListener(marker, "click", function () {
        marker.openInfoWindowHtml("this marker has been clicked");
    });

    function myclick(i) {
        GEvent.trigger(marker, "click");
    }

    map.addOverlay(marker);