Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   эмитировать перемещение google map (https://javascript.ru/forum/dom-window/10729-ehmitirovat-peremeshhenie-google-map.html)

amigo* 18.07.2010 01:22

эмитировать перемещение google map
 
Такая ситуация. Есть карта google map, поверх неё я накладываю слой svg, на котором могу рисовать любые нужные мне объекты. Когда я перетаскиваю верхний svg слой, то нужно, чтобы карта перетаскивалась соответственно.

Пробовал реализовать через 2 способа.

1) При каждом перемещении слоя svg, вызывал команду map.setCenter(...) в google map. Метод работаетает, но при быстром перемещении карта не успевает прорисовываться, так что виден только один svg слой. Из-за этого метод не подходит.

2) Проанализировав поведение google map при помощи firebug, обнаружил, что существует div, который содержит загружаемые картинки. Так вот при перемещении карты атрибуты этого div`a left и top меняются на величину сдвига соответственно.
Если устанавливать новые значения left и top при каждом сдвиге svg, то карта google map будет перемещаться, но новые участки карты не будут загружаться.

Может есть какие-то идеи?

x-yuri 18.07.2010 04:27

а почему бы тебе не засунуть свой svg... в этот div :)

p.s. эмитировать

amigo* 18.07.2010 11:42

Цитата:

Сообщение от x-yuri (Сообщение 64231)
а почему бы тебе не засунуть свой svg... в этот div :)

Да, это бы решило все проблемы). В google map свои оверлеи так и реализованы. Но смысл решения разместить svg после div, в том, чтобы можно было менять разные карты (не только google map), а svg при этом оставался неизменным на той же позиции

Цитата:

Сообщение от x-yuri (Сообщение 64231)

ошибочка вышла:-? . нужно было "имитировать"

x-yuri 18.07.2010 18:24

а зачем svg оставаться неизменным? Можно подстраиваться под текущую карту, а неизменным сделать интерфейс управления этим svg... хотя сложно так абстрактно говорить, конечно...


Часовой пояс GMT +3, время: 04:17.