【发布时间】:2019-10-25 06:15:10
【问题描述】:
当我单击它们时,我试图在谷歌地图上获取各个标记的 ID/索引。
目前,我只得到相同的id: 4
这是JSFIDDLE
这里是我设置标记的地方:
function setMarkers(locations) {
var bounds = new google.maps.LatLngBounds();
for (var i = 0; i < locations.length; i++) {
var loc = locations[i];
var currentLatLong = new google.maps.LatLng(loc[1], loc[2]);
var marker = new google.maps.Marker({
position: currentLatLong,
map: map,
index: i,
animation: google.maps.Animation.DROP,
title: loc[0],
zIndex: loc[3]
});
marker.addListener('click', function(e, i) {
var info = marker.index;
document.getElementById("markerInfo").innerHTML = "<h1>id:" + info + "</h1>";
});
bounds.extend(currentLatLong);
// Push marker to markers array
markers.push(marker);
}
map.fitBounds(bounds);
map.panToBounds(bounds);
}
如何复制:
1) 点击屏幕左侧的搜索按钮
2) 单击一个标记,然后单击另一个。
我想获取标记的索引,以便显示与标记匹配的数组中的数据。
有人有什么想法吗?我认为这是因为循环覆盖了事件侦听器,我尝试将其移出但没有任何反应。
【问题讨论】:
标签: javascript google-maps google-maps-markers jsfiddle