Использую следующий код:
// Создание обработчика для события window.onLoad
YMaps.jQuery(function () {
// Создание экземпляра карты и его привязка к созданному контейнеру
var map = new YMaps.Map(YMaps.jQuery("#YMapsID")[0]);
map.setCenter(new YMaps.GeoPoint(60.597259, 56.838056), 12);
map.addControl(new YMaps.Zoom());
// Создание группы
var gCollection = new YMaps.GeoObjectCollection();
// Создание прямоугольной области
var gBounds = new YMaps.GeoCollectionBounds();
[НАЧАЛО ЦИКЛА]
// Геокодирование
var geocoder = new YMaps.Geocoder([АДРЕС_В_ВИДЕ_СТРОКИ], {results:1});
map.addOverlay(geocoder);
YMaps.Events.observe(geocoder, geocoder.Events.Load, function () {
if (this.length()) {
gCollection.add(new YMaps.Placemark(this.options.boundedBy));
gBounds.add(new YMaps.Placemark(this.options.boundedBy));
} else {
alert("Ничего не найдено")
}
});
YMaps.Events.observe(geocoder, geocoder.Events.Fault, function (error) {
alert("Произошла ошибка: " + error.message)
});
[КОНЕЦ ЦИКЛА]
// Добавление группы на карту
map.addOverlay(gCollection);
// Отображение прямоугольной области по центру карты
map.setBounds(gBounds);
});
В итоге: все оверлей на карте отображаются, а прямоугольная область по
центру карты не встает (отображается карта в минимальном масштабе по
центру)
Мое предположение: объект
gBounds.add(new YMaps.Placemark(this.options.boundedBy));
не понимает передаваемую ему точку