允许用户在鼠标点击添加 makrer 后在谷歌地图上添加信息窗口



我是谷歌地图和javascript的新手。我想要实现的是,当我加载谷歌地图时,用户应该能够通过单击在他希望的任何位置添加标记/图钉。我现在能够做到这一点,我试图添加的是,如果用户单击该引脚被添加,还应该有一个描述窗口,用户可以在该引脚上添加该窗口。假设当我单击某个位置以添加图钉时,我还应该能够插入一些描述,例如"我的家"等。以下是我到目前为止的代码。无论如何,谢谢。

<!DOCTYPE html>
<html>
  <head>
    <title>Accessing arguments in UI events</title>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
    <meta charset="utf-8">
    <style>
      html, body, #map-canvas {
        height: 100%;
        margin: 0px;
        padding: 0px
      }
    </style>
    <script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>
    <script>
function initialize() {
  var mapOptions = {
    zoom: 4,
    center: new google.maps.LatLng(-25.363882,131.044922)
  };
  var map = new google.maps.Map(document.getElementById('map-canvas'),
      mapOptions);
  google.maps.event.addListener(map, 'click', function(e) {
    placeMarker(e.latLng, map);
  });
}
function placeMarker(position, map) {
  var marker = new google.maps.Marker({
    position: position,
    map: map
  });
  map.panTo(position);
}
google.maps.event.addDomListener(window, 'load', initialize);
    </script>
  </head>
  <body>
    <div id="map-canvas"></div>
  </body>
</html>
您需要

将点击侦听器添加到标记中,以便在单击标记时打开信息窗口。在创建标记的位置之后创建信息窗口:

var infowindow = new google.maps.InfoWindow({
   content : 'Test Content'
});

之后,添加侦听器:

google.maps.event.addListener( marker, "click", function() {
   infowindow.open( map, marker );
});

最新更新