Google Maps infoWindow без маркера?


В соответствии с документацией маркер является необязательным с infoWindow, так как это достигается, пожалуйста? Я попробовал infowindow.откройте (map) и infowindow.open (map, null) , но оба не производят ничего.

2 4

2 ответа:

infowindow.open(map) это не имеет смысла, так как вам нужно указать положение, в котором должно открываться окно infowindow, также оно имеет конический стержень, который указывает место, куда оно должно указывать.

В соответствии с документацией Infowindows- InfoWindows могут быть прикреплены либо к объектам маркера (в этом случае их положение основано на местоположении маркера), либо к самой карте в заданном месте.

Поэтому, если вы не хотите, чтобы маркер открывал информационное окно, Используйте событие щелчка по карте -

var iwindow= new google.maps.InfoWindow;
    google.maps.event.addListener(map,'click',function(event)
    {
         iwindow.setContent(event.latLng.lat()+","+event.latLng.lng());
         iwindow.open(map,this); 
         iwindow.open(map,this);
    });

И закрыть InfowWindow - infowindow.setMap(null);

Надеюсь, это развеяло ваши сомнения.

Если позиция задана, то нет проблем с отображением информационного окна

function initMap() {
  var map = new google.maps.Map(document.getElementById('map'), {
  zoom: 6,
  center: {lat: 55.6761, lng: 12.5683},
  mapTypeId: google.maps.MapTypeId.TERRAIN
});
var infowindow = new google.maps.InfoWindow({
  content: "Copenhagen"
});
infowindow.setPosition({lat: 55.6761, lng: 12.5683});
infowindow.open(map);
}