Google Maps – /Places-API-JavaScript – Nicht-Eigenschaft Lesen „setContent‘ undefined

Ich versuche, display ein Infofenster auf Klick auf die einzelnen marker, der gesetzt wird mit den Orten Abfragen. Ich bin mit der Geolocation-API, um die Position und zeigt dann alle von der nahe gelegenen pubs. Ich würde gerne in der Lage, klicken Sie auf die einzelnen marker und es zeigt den Namen der Kneipe (Ort.name).

Den Fehler bekomme ich in der Konsole beim klicken auf den marker „Cannot read property ’setContent‘ undefined„.

//Google Places-code nicht einschließlich meiner geolocation-code, welcher funktioniert //

function initMap() {
myLatLng = new google.maps.LatLng(lat,long);
var Options = {
    scrollwheel: false,
    zoom:15,
    center: myLatLng,
    disableDefaultUI: true,
    mapTypeId: google.maps.MapTypeId.ROADMAP
};

map = new google.maps.Map(document.getElementById('map'),Options);
var marker = new google.maps.Marker({
    position: myLatLng,
    map: map,
    label: "Y",
});    

      var service = new google.maps.places.PlacesService(map);
      service.nearbySearch({
        location: myLatLng, //Uses geolocation to find the following
        radius: 500,
        types: ['bar']
      }, callback);

  };

function callback(results, status) {
  if (status === google.maps.places.PlacesServiceStatus.OK) {
    for (var i = 0; i < results.length; i++) {
      createMarker(results[i]);
    }
  }
}

function createMarker(place) {
  var placeLoc = place.geometry.location;
  var marker = new google.maps.Marker({
    map: map,
    position: place.geometry.location
  });

  google.maps.event.addListener(marker, 'click', function() {
    infowindow.setContent(place.name);
    infowindow.open(map, this);
  });
}

Habe ich gefunden, dass dieser code hat genau das gleiche problem wie ich, das Infofenster nicht geladen und der gleiche Fehler wird in der Konsole.

https://jsfiddle.net/jimedelstein/bfdhjsyy/

und hier ist die Fehlermeldung in der Konsole:

http://i.stack.imgur.com/2Pkeb.png

Danke!

 

One Reply
  1. 3

    Dem Infofenster variable nicht definiert. Versuchen infoWindow = new google.maps.InfoWindowirgendwo vor dem Aufruf infowindow.setContent();.

    Schauen Sie hier für details auf, wie Sie mit infoWindows: https://developers.google.com/maps/documentation/javascript/3.exp/reference#InfoWindow

    • Ich habe nur noch diese und der Fehler bleibt der gleiche. Ich weiß, ich bin etwas fehlt, kann einfach nicht herausfinden, was.
    • Könntet Ihr das update der code-snippet damit ich sehen kann, wo du ihn Hinzugefügt? Auch, stellen Sie sicher, legen Sie die Karte angebracht werden wie diese: infoWindow = new google.maps.InfoWindow({ map: map });
    • habe es endlich an die Arbeit! Ich fügte hinzu, diese “ var Infofenster = new google.maps.Infofenster();“ meine info createMarker Funktion. Es erscheint nun das onclick-das Infofenster mit dem Ortsnamen für jeden. Vielen Dank für die Hilfe! 🙂

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.