wake-up-neo.net

Google Map API V3: Hinzufügen von benutzerdefinierten Daten zu Markierungen

Gibt es eine Möglichkeit, meinen Markern benutzerdefinierte Informationen für die spätere Verwendung hinzuzufügen? Es gibt Möglichkeiten, ein Infofenster und einen Titel zu haben, aber was ist, wenn ich den Marker mit anderen Informationen verknüpfen möchte.

Auf der Seite werden andere Elemente angezeigt, die von den Markierungen abhängen. Wenn also eine Markierung angeklickt wird, muss sich der Inhalt der Seite ändern, je nachdem, auf welche Markierung geklickt wurde. Ich möchte die benutzerdefinierten Daten speichern und abrufen, sobald eine Markierung angezeigt wird geklickt etc.

Vielen Dank

107
Abid

Da ein Google Marker ein JavaScript-Objekt ist, können Sie benutzerdefinierte Informationen in der Form key: value Hinzufügen, wobei key eine gültige Zeichenfolge ist. Sie heißen Objekteigenschaften und können auf viele verschiedene Arten angesprochen werden. Der Wert kann alles Mögliche sein, so einfach wie Zahlen oder Zeichenfolgen, aber auch Funktionen oder sogar andere Objekte. Drei einfache Möglichkeiten: In der Deklaration Punktnotation und eckige Klammern

var markerA = new google.maps.Marker({
    map: map,
    position: new google.maps.LatLng(0, 0),
    customInfo: "Marker A"
});

var markerB = new google.maps.Marker({
    map: map,
    position: new google.maps.LatLng(-10, 0)
});
markerB.customInfo = "Marker B";

var markerC = new google.maps.Marker({
    map: map,
    position: new google.maps.LatLng(-20, 0)
});
markerC['customInfo'] = "Marker C";

Dann, um es auf ähnliche Weise abzurufen:

google.maps.event.addListener(markerA, 'click', function() {
    alert(this.customInfo);
});
197
Tina CG Hoehr

Sie können den Markierungen Ihre eigenen benutzerdefinierten Eigenschaften hinzufügen (achten Sie nur darauf, dass Sie nicht mit den Eigenschaften der API in Konflikt geraten).

14
geocodezip