Клуб API Карт

Открытие yandex maps в слое google maps

ua6atg
19 сентября 2009, 22:56

Длительное время использую карты google maps на своем сайте.


Вот примерно так:

http://tuapse24.ru/google_maps/maps_p.php?lat=44.0871&long=39.1244&opis=%CF%E0%ED%F1%E8%EE%ED%E0%F2%20%EE%F2%E4%FB%F5%E0%20%20%C3%E8%E7%E5%EB%FC-%C4%E5%F0%E5

Однако, yandex maps более информативен для России.

Поэтому решил открывать по ссылке  в  слое (div) googlе maps  еще и слой yandex maps

Как это лучше сделать? Грузить одновременно 2 карты, а потом по событию открывать нужную карту (как это делают иногда с картинками)

Есть какое либо изяшное решение вопроса? Сходу код сообразить не могу.



10 комментариев
Подписаться на комментарии к посту
Если Вы хотите одновременно отображать карту от Google и Yandex, то необходимо сразу загружать 2 API (Google Maps и Яндекс.Карт).

Вы можете воспользоваться также загрузкой карты по требованию Этот способ будет предпочтительнее, если карту от Яндекс Вы захотите показывать после каких либо действий пользователя, например, при щелчке на соответсвующей вкладке.

Да, спасибо, красивое решение проблемы.  Завтра "навояю"
Вы случайно не в курсе, в  API google нет подобной вещи?  (загрузка API по требованию)
А то возможно yandex maps будет идти 1 слоем, а google 2.
У Гугля тоже есть загрузка по требованию. Более того, даже скрипт, который загружает карты тоже можно загрузить динамически. Так что изначально вообще ничего подключать не нужно.
Жду, когда яндекс такое у себя сделает.
Мы учтем Ваши пожелания. Спасибо.
Я уже в принципе все написал. Просто наложил два слоя, yandex api вызываю по вызову. Слои переключаю java скриптом. Остались некие проблемы с позиционированием слоев, но это другая проблема. P.S а не дадите ссылку где Google описывает как он решает вышеописанную проблему? (хотя это вопрос к преведующему корреспонденту)
Реализовано вот так: http://tuapse24.ru/google_maps/maps_p.php?lat=44.0840&long=39.0880&opis=%D7%E0%F1%F2%ED%FB%E9%20%E4%EE%EC%20%E2%20%D2%F3%E0%EF%F1%E5%20%ED%E0%20%E1%E5%F0%E5%E3%F3%20%EC%EE%F0%FF От отложенного вызова скрипта пришлось отказаться, все оказалось гораздо проще. Все решилось банальным манипулированием DIV посредством java.
Если свдинуть карту гугл, то на я.картах это никак не отобразится. Может стоит их связать друг с другом?
Я не совсем понял Вашу мысль. Вы предлагаете просто рядом поставить 2 карты? yandex и google?
Нет, я предлагю отлавливать на одной карте события перемещения, изменения масштаба и типа карты и дублировать это на другую.
А там и так это сделано. Просто с нужного ресурса (в моем случаи это пансионаты и частные гостиницы) идет запрос GET с координатами и карта Google и карта Yandex показывает одно и тоже. Cделано, честно говоря , топорно с помощью PHP. Но работает. Более пока ничего не надо. Единственно, можно было бы отлавливать изменения масштаба карт, правда с ходу не могу понять как это сделать