私はGoogleマーカーが置かれているGoogleマップを持っています。マーカーの配置はうまく機能します。しかし、私がマーカーをクリックすると、アドレスが情報ウィンドウに表示されます。住所、経度、緯度はmodel.jsから変数myLocationsにロードされます。JavaScript:選択されたGoogleマーカーを取得
EDIT:現在、マーカーをクリックすると、myLocationsの最後のオブジェクトのアドレスが返されます。しかし、私はクリックされた人のmyLocations.adressを取得したいと思います。
var markerspots;
var spot;
var j;
for (j = 0; j < myLocations.length; j++){
spot = {
lat: parseFloat(myLocations[j].lati),
lng: parseFloat(myLocations[j].long)
};
contentString = myLocations[j].adress;
markerspots = new google.maps.Marker({
position: spot,
map: map,
icon: markerspot,
content: contentString,
id: j
});
var infowindow = new google.maps.InfoWindow();
google.maps.event.addListener(markerspots, "click", (function(marker) {
return function(evt) {
infowindow.setContent(contentString);
infowindow.open(map, markerspots);
}
})(markerspots));
}
私は多くの解決策を見つけましたが、それらのどれも理解できません。では、クリックしたマーカーのコンテンツを情報ウィンドウに表示するにはどうすればよいですか?
おかげ
あなたは 'infowindow'と' map'を作成するのですか? – duncan
@duncanのinfowindowは下の3番目にあり、var infowindow = new google.maps.InfoWindow()です。マップはちょうど投稿されたコードの部分で見つけることができませんが、上記のその部分はこのように作成します:var map = new google.maps.Map(document.getElementById( "karte")、kartenoption); –
jsfiddleを投稿してください –