Не открывайте InfoWindow с пользовательским маркером. (Карты Google)

#google-maps #infowindow

#google-карты #infowindow

Вопрос:

Мне нужно открыть infoWindow на customMarker .

Информационное окно не открывается. «Щелчок» не работает на:

 $google.maps.event.addDomListener(overlay, 'click', function () {
        console.log("test");
        iw.open(map, this);
        });
  

Вот мой код:

 $.getJSON(jsonShops, function(places) {
    for (var i = 0, index = 0; i < places.shops.length; i  , index  ) {
        var bounds = new google.maps.LatLng(places.shops[i].lat, places.shops[i].lng);
        var overlay = new MarkerSOverlay(bounds, alphabet.charAt(index), map);

        var iw = new google.maps.InfoWindow({
            content: "Simple",                
            position: bounds
        });


        google.maps.event.addDomListener(overlay, 'click', function () {
            console.log("test");
            iw.open(map, this);
        });
}
  

Ответ №1:

Измените addDomListener на addListener

 google.maps.event.addListener(overlay, 'click', function () {
   console.log("test");
   iw.open(map, this);
});
  

addListener предназначен для объектов google.maps (например, маркеров), addDomListener предназначен для узлов DOM.