2017-08-09 1 views

Antwort

0

Der zweite Parameter in der Klick-Handler-Funktion ist der Schlüssel/Index der das Markierungsobjekt.

onMarkerClick (Event e, String-Code)

Eine Möglichkeit, das zu tun, ist:

onMarkerClick: function(e, code) { 
    var mapObj = $("#map").vectorMap("get", "mapObject"); 
    var idx = parseInt(code); // optional 
    var name = mapObj.markers[idx].config.name; 
    var latitude = mapObj.markers[idx].config.latLng[0]; 
    var longitude = mapObj.markers[idx].config.latLng[1]; 
} 

Erläuterung:

  • je nachdem, wie Sie erstellt die Marker, müssen Sie möglicherweise den Indexerhaltenals numerischer Wert
  • standardmäßig jede Markierung die name speichert und die coords des Punktes

Wenn Sie weitere Informationen benötigen, versuchen, die Eigenschaften des Kartenobjekts im Browser zu erkunden, wie folgt aus: console.log(mapObj.markers);

+0

Hmm scheint wie eine gute Lösung, aber ich am Ende mit einem Fehler, der mir sagt, dass getMapObject nicht gelesen werden kann. Es zeigt auf einen Fehler mit dem Skript jvectormap js. Wahrscheinlich etwas, was ich falsch gemacht habe:/ –

+0

überprüfe das Element wo du deine Map abgelegt hast: '$ (" # map ")' sollte diese 'id' enthalten. Wenn das nicht funktioniert, poste etwas Markup;) – deblocker

+1

Oh yeah meine Karte heißt world-map not map. Gehen Sie es jetzt versuchen –

Verwandte Themen