Клуб API Карт

События перемещения каты, смены зум

Пост в архиве.

Подскажите пожалуйста. события которые отвечают за окончания перемещения по карте и смене зума.

 

Задача: отобразить на карте метки в обласи видимой карты.

12 комментариев

boundschange

Есть ли возможность блокировать перемещения по карте и смену зума. до окончания например ajax запроса?

Алексей Yarrr!
28 января 2016, 03:29

Как минимум, вы можете блокировать дом события. Еще вы можете отключать у карты эти обработчики.

Почитайте в документации, как динамически изменять поведение обработчиков у карты.

Мне не нужно отключать обработчик. Мне нужно чтобы до окончания запроса на сервер пользователь не смог сменить зом и не смог сместить центр карты.

Алексей Yarrr!
28 января 2016, 03:29

А, вон оно что. Тогда ничем не могу помочь...

Решил 

     myMapList.behaviors.disable('drag');     myMapList.behaviors.disable('scrollZoom');     myMapList.controls.remove('zoomControl');

 

 

Map.behavior.ScrollZoom.disable();

Не работает.

 

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

Map - имя переменной с вашей картой. Выключайте перед запуском запроса и включайте после включения.

Еще один вопрос.

Буду делать так :

1 удалять все метки и делать запрос на сервер при boundschange

2 добавлять полученные метки в кластеры, карту

3 при нажатии на кластер будет срабатывать 'boundschange', а вообщем   этого не надо - метки то уже есть


Собственно вопрос можно ли отловить в boundschange ВСЁ , но только не приближение по клику кластера

Не пробовал, но подозреваю:

Создаёте обработчик клика на кластер, при клике ставите флаг=false. Ставите всё тело обработчика boundschange в условие на флаг, если флаг==true, то тело обработчика выполняется, иначе флагу присваиваете true.

Немного глуповато, но должно работать