Добрый день.
Проблема такая. Необходимо создать карту, на которой расположены метки. Данные для геокодирования берутся из массива $('span.adress'). Соответственно, геокодирование происходит в цикле. Далее надо сделать, чтобы при щелчке на метке появлялся балун с названием из другого массива $(''.company_header).
window.onload = function() {
var map;
var geoResult;
var adress = $("span.adress");
var names = $(".company_header");
map = new YMaps.Map(document.getElementById("YMapMain")
map.addControl(new YMaps.Zoom()
map.addControl(new YMaps.ToolBar()
map.setCenter(new YMaps.GeoPoint(37.64, 55.76), 10);
var gCollection = new YMaps.GeoObjectCollection
for (i = 0; i < adress.length; i++) {
adr = $(adress[i]).text(
nam = $(names[i]).text(
$(res[i]).attr("val", i);
geocoder = new YMaps.Geocoder(adr, {results: 1, boundedBy: map.getBounds()}
YMaps.Events.observe (geocoder, geocoder.Events.Load, function () {
geoResult = this.get(0);
$(res[i]).attr("val", i);
YMaps.Events.observe(geoResult, geoResult.Events.Click, function() {
this.description = nam;
}
gCollection.add(geoResult);
}
}
map.addOverlay(gCollection);
}
Почему-то, текст берётся только из последнего элемента. И при щелчке на любой точке открывается балун с неизменным текстом, взятым из последнего элемента массива. А мне надо, чтобы текст менялся в зависимости от того, на какой метке щёлкнули