Вам необходимо добавить событие к каждому отдельному наложению.
var markers = [
{lat: -25.363882, lon: 131.044922, title: "foo"},
{lat: -26.363882, lon: 130.044922, title: "bar"},
];
//event callback
function callback(overlay, event) {
console.log(overlay, event);
}
//add the markers
for (var i = 0; i < markers.length; i++) {
markers[i].obj = new google.maps.Marker({
position: new google.maps.LatLng(markers[i].lat, markers[i].lon),
map: map,
title: markers[i].title
});
//closure
(function(marker){
google.maps.event.addListener(marker, 'click', function (event) {
callback(marker, event);
});
})(marker[i].obj);
}
примечание: я не проверял этот код