google-maps-api-3 - style - google maps marker tooltip




Google Maps-API v3 InfoWindow wird automatisch beim Laden der Seite geöffnet (4)

Ich arbeite an einem Projekt, bei dem ich Google Maps api-v3 nutze. Auf der Karte befinden sich einige Ortsmarkierungen, die Informationen enthalten, die ich in einem InfoWindow gespeichert habe.

Ich frage mich, ob es sowieso so ist, dass Sie ein InfoWindow so einrichten können, dass es automatisch beim Laden der Seite geöffnet wird (dh automatisch ohne Benutzerinteraktion geöffnet wird).

Alles was ich online finden kann, ist, dass es an einen Event-Listener gebunden sein muss, aber alle Ereignisse, die das InfoWindow-Objekt zu haben scheint, sind Mausereignisse.

Kennt jemand eine Art Workaround?


Hier ist mein Code, der Infofenster mit Karte lädt und auch mit Maus über.

map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
    map: map,
    icon: "/images/map-marker.png",
    draggable: true,
    position: results[0].geometry.location

});
var infowindow = new google.maps.InfoWindow({
    content: "Use pin to point your exact locality"
});
google.maps.event.addListener(marker, 'mouseover', function () {
    infowindow.open(map, marker);
});
infowindow.open(map, marker);

Ich bin mir nicht sicher, ob ich deine Frage vollständig verstanden habe, aber das funktioniert bei mir mit einem hart codierten LatLng:

var infoWindow = null;
function initialize() 
{
    infoWindow = new google.maps.InfoWindow();
    var windowLatLng = new google.maps.LatLng(43.25,-68.03);
    infoWindow.setOptions({
        content: "<div>This is the html content.</div>",
        position: windowLatLng,
    });
    infoWindow.open(map); 
} // end initialize

google.setOnLoadCallback(initialize);

Nimm einfach die infowindow.open (map, marker); aus dem google.maps.event.addListener. Es sollte so aussehen:

      var marker = new google.maps.Marker({
      position: myLatlng1,
      map: map,
      title: 'Uluru (Ayers Rock)'

  });

  infowindow.open(map,marker);

  google.maps.event.addListener(marker, 'click', function() {
  });   

function initMap() {
    var cairo = {lat:18.519331, lng: 73.849421};
    var map = new google.maps.Map(document.getElementById('map'), {
        scaleControl: true,
        center: cairo,
        zoom: 15,
    });

    var infowindow = new google.maps.InfoWindow;
    infowindow.setContent('<b>adddress</b>');

    var marker = new google.maps.Marker({map: map, position: cairo});
    infowindow.open(map, marker);
    infoWindow.open(map); 
}
<script async defer 
    src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCrCByzXY6y5KMSOi9AuqWVf4VYZPyJ5SE&language=hi&region=EG&callback=initMap">
</script>
<div id="map"></div>





google-maps-api-3