私は自分のwebAPIからjsonオブジェクトの配列を取得しています。私は自分の位置に各ユーザーのマーカーを正しく表示できますが、クリックしたアイテムを取得するためにそれぞれをクリックしても機能しません。常にリストの最後から情報を取得します。GoogleマップAPI v3、クリックマーカーを取得できません
これは私が地図上にそれらを置くために使用するコードです:
var markers = [];
for (var i = 0; i < size; i++) {
var zIndex = membersList[i].type;
var latLng = new google.maps.LatLng(membersList[i].latitude,
membersList[i].longitude);
var marker = new google.maps.Marker({
'position' : latLng,
'shadow' : null,
'zIndex' : zIndex,
'title' : membersList[i].username,
'id' : i,
'icon' : markerImage[membersList[i].type]
});
google.maps.event.addListener(marker, 'click', function()
{
console.log(marker.id);
var clicked = membersList[marker.id];
var mType = ['', 'Couple', 'Male', 'Female'];
var textType = mType[clicked.type];
var userName = clicked.username;
$(this).simpledialog2({
mode: 'button',
headerText: "OPTIONS",
headerClose: true,
buttonPrompt: userName+ ' ('+textType+')',
buttons : {
'PROFILE': {
click: function() {
toUser = userName;
loadPage('profile');
},
icon: "info"
},
'MESSAGE': {
click: function() {
toUser = userName;
loadPage('compose');
},
icon: "star",
}
}
});
});
markers.push(marker);
}
markerCluster.addMarkers(markers);
私はいくつかのズームレベルで地図上のグループ化されたマーカーを表示するmarkerClustererを使用していますちなみに。
私には閉鎖の問題のような音がします。 'console.log'行は何を出力しますか? 'markers.length'と同じ数字ですか? –
私はそれも考えていますが、私は他の方法を試してみましたが、まだ同じ結果を得ています。 – SERPRO