Тормозят маркеры при просмотре карты #15

Closed
Koc opened this Issue May 31, 2012 · 11 comments

Comments

Projects
None yet
3 participants
Contributor

Koc commented May 31, 2012

Ссылка на демо все та же - http://tinyurl.com/chyzsax . Если переключиться на Гугл и особенно на Яндекс - при перетягивании карты маркер перемещается, но с сильными такими тормозами. При этом на opencyclemap такого лага не наблюдается.

Ничего, что я по-русски?)

Owner

shramov commented Jun 1, 2012

Это не маркеры тормозят вроде, а подложка дергается из-за трансляции в неё событий о движении

Contributor

Koc commented Jun 1, 2012

А реально это как-то починить?

Owner

shramov commented Jun 1, 2012

Может я чего не вижу, но на мой взгляд проблемы особой нет.
Рывки устранить не выйдет скорее всего из-за необходимости использования чужого api

@shramov shramov closed this Jun 1, 2012

@shramov shramov reopened this Jun 1, 2012

Contributor

Koc commented Jun 1, 2012

В хроме относительно нормально, но в фф серьезно тупит. В ие8 в гугле сначала перемещается маркер а по drag end карта. В ие8 в яндексе карта вообще не двигается до того момента, пока не отпустишь мышь.

И в яндексе проскакивают его события - двойной клик правой кнопкой уменьшает. По идее события яндекс-карты должны глушиться

Owner

shramov commented Jun 1, 2012

On Fri, Jun 01, 2012 at 01:38:48AM -0700, Konstantin.Myakshin wrote:

В хроме относительно нормально, но в фф серьезно тупит. В ие8 в гугле сначала
перемещается маркер а по drag end карта. В ие8 в яндексе карта вообще не
двигается до того момента, пока не отпустишь мышь.
Охотно верю. ИЕ у меня нету и проверить я это никак не могу. Буду рад фиксам :)

И в яндексе проскакивают его события - двойной клик правой кнопкой уменьшает.
По идее события яндекс-карты должны глушиться
Двойной клик правой не обрабатывается лифлетом, поэтому и проскакивает дальше
Вроде так, наверно надо отключать.

Contributor

Koc commented Jun 1, 2012

Чуточку получше стало, когда отключил все поведения ЯК.

var map = new ymaps.Map(this._container, {center: [0,0], zoom: 0, behaviors: []});
Contributor

Koc commented Jun 1, 2012

Пробовал такие варианты: оборачивал установку баундов в ЯК в setTimeout 0 (в надежде, что оно будет выполняться асинхронно); по событию movestart делал по setInterval обновления баундов в ЯК и по moveend вызывал clearInterval.

Ничего не помогает. Я так и не могу понять, почему L.TilesLayer с OSM не тормозит?

Owner

shramov commented Jun 1, 2012

Ничего не помогает. Я так и не могу понять, почему L.TilesLayer с OSM не тормозит?
Потому что все смещения выполняются выставлением правильных стилей на div карты.
Для гугла и яндекса это не получается сделать, они живут в отдельном слое.

Contributor

Koc commented Jun 15, 2012

А никак нельзя использовать статические карты через L.TileLayer или что-то аналогичное?

Owner

shramov commented Jun 15, 2012

А никак нельзя использовать статические карты через L.TileLayer или что-то аналогичное?
Можно, бинг. Остальные требуют использовать апи

Collaborator

brunob commented Oct 22, 2013

Я думаю, мы можем закрыть этот вопрос :)

@brunob brunob closed this Oct 22, 2013

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment