如何在没有标记的情况下将Infowindow添加到谷歌地图

时间:2015-10-28 13:48:50

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

如何在没有标记的情况下向地图添加信息窗口,我可以手动指定位置(latlng)。 有一个使用点击位置的解决方案here,但我想自己指定。到目前为止,我试过了:

var infowindow = new google.maps.InfoWindow({
    content: "You start here",
    position: document.getElementById('start').value
  });

在map初始化函数里面并使用了这段代码:

  infowindow.open(map, new google.maps.LatLng(6.473500, 81.236577));

在监听器内但它没有用。出现错误,说它无法读取打开infowindow的latlng。 有什么想法吗?

1 个答案:

答案 0 :(得分:3)

您必须在公开通话中使用google.maps.Marker对象设置位置,或者如果您没有标记,则直接设置位置。这有效:

var infowindow = new google.maps.InfoWindow({
    content: "You start here",
    position: new google.maps.LatLng(6.473500, 81.236577)
});
infowindow.open(map);

fiddle

代码段



function loadMap() {
  var map = new google.maps.Map(document.getElementById('map'), {
    zoom: 12,
    center: new google.maps.LatLng(6.473500, 81.236577)
  });
  var infowindow = new google.maps.InfoWindow({
    content: "You start here",
    position: new google.maps.LatLng(6.473500, 81.236577)
  });
  infowindow.open(map);
}
window.onload = loadMap();

html,
body,
#map {
  height: 100%;
  width: 100%;
}

<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCkUOdZ5y7hMm0yrcCQoCvLwzdM6M8s5qk"></script>
<div id="map"></div>
&#13;
&#13;
&#13;