Клуб API Карт

Перемещение

Eterity
24 апреля 2010, 17:17

Доброго времени суток.

Возможно задача покажется тривиальной, но никак не могу решить ее, уже всю голову сломал.

Необходимо установить центр карты по клику на кнопку в <body> документа уже после инициализации карты.


Делаю так, но эффекта ноль, firebug пишет что вообще не знает ни про какой объект map(и в принципе он прав):

<input onclick="map.setCenter(new YMaps.GeoPoint(30.313497,59.938531));" type="button" value="Переместить на 1" />


Карта инициализируется стандартно - как в быстром старте. Есть решение кроме как каждый раз инициализировать новую карту с нужными координатами?

5 комментариев
Подписаться на комментарии к посту
Вы хотите изменять центр карты по щелчку мыши?
Я видел пример по перемещению карты из Москвы в Питер, но там координаты задавали в процессе инициализации карты.

Мы же сначала делаем карту, затем выводим интерфейс пользователя. Ну и например, пользователь ввел координаты в поля ввода - карта должна установиться центром на них. Я написал про перемещение по клику на кнопку - но это просто один из вариантов, здесь главное - центр должен устанавливаться по одному из событий пользовательского интерфейса веб-странички.
У меня тоже такая же трудность.
Если в конце скрипта делать центровку карты, например, после загрузки нескольких xml в формате YMapsML, то ничего не происходит.
ООО решил проблему=)
Оказалось это я тупой, не заметил сразу.
При
инициализации мы указываем var map=new... а что это значит? правильно -
что объект map является private
Глобализируем его, убрав слово var - и
карту map станет видно из всех скриптов.
Например так: