Руководство по переходу на JS API 2.1
Руководство содержит примеры, демонстрирующие различия между JavaScript API версий 2.1 и 2.0, а также 2.1 и 1.x. В разделе рассматриваются только те операции с API, в которых нарушена обратная совместимость.
Переход с версии 2.0
В разделе приведены примеры работы с JavaScript API версий 2.0 и 2.1. Следует обратить внимание на выделенные фрагменты кода. К каждому из них приводится пояснение.
Подключение API
Версия 2.0 |
Версия 2.1 |
URL API: https://api-maps.yandex.ru/2.0/. Обязательные параметры:
Дополнительные параметры:
|
URL API: https://api-maps.yandex.ru/2.1/. Обязательные параметры:
Доступны те же параметры, что и в версии 2.0. Параметром По умолчанию загружаются все компоненты API ( Модульная система устроена таким образом, что функциональность подгружается в момент ее фактического использования. В большинстве случаев нет необходимости настраивать параметр |
Создание карты
Версия 2.0 |
Версия 2.1 |
По умолчанию карта создается без элементов управления. |
По умолчанию карта создается со стандартными элементами управления: поиск по карте, выбор типа карты, полноэкранный режим, ползунок масштаба, геолокация и кнопка "Пробки". Если необходимо создать карту без элементов управления, следует в ее конструкторе в поле Как добавить на карту необходимые элементы управления см. в разделе Элементы управления. |
Поведения карты
Версия 2.0 |
Версия 2.1 |
По умолчанию включены следующие поведения: 'drag', 'multiTouch', 'dblClickZoom', 'rightMouseButtonMagnifier'. |
По умолчанию включены те же поведения, что и в версии 2.0, а также 'scrollZoom'. |
Геообъекты
Задание стиля метки
Версия 2.0 |
Версия 2.1 |
Меткам можно задавать цвета только из предоставленного набора. |
При задании своего значка иконки нужно задавать опцию Метки имеют векторное представление, поэтому для их иконок можно задавать произвольные цвета (кроме меток, растягивающихся под контент). Обратите внимание, что в браузере IE8 данная возможность не поддерживается (иконки будут стандартного голубого цвета).
|
Создание собственного макета геообъекта
Версия 2.0 |
Версия 2.1 |
При добавлении геообъектов на карту происходит добавление соответствующих элементов в DOM-дерево. Они добавляются поверх контейнера, на котором реализуется подписка события карты. Таким образом, события, происходящие на геообъекте, отслеживаются на уровне DOM. |
При добавлении геообъектов на карту соответствующие элементы добавляются в DOM-дерево под слой, на котором реализуется подписка на события карты. Это означает, что на DOM уровне события геообъектов не отслеживаются. Интерактивность геообъектов реализуется за счет активных областей, которые привязаны к слою событий. Для геообъектов со стандартным макетом активные области определяются автоматически. При задании собственного макета геообъекта необходимо самостоятельно указать форму активной области с помощью опции Подробный пример задания фигуры активной области можно посмотреть в песочнице. |
Кластеризация
Балун и хинт кластера
Версия 2.0 |
Версия 2.1 |
Для каждого кластера создается менеджер балуна в поле balloon. |
Создается один менеджер балуна/хинта в поле balloon/hint кластеризатора. |
Работа с объектами кластеризатора после их добавления на карту
Версия 2.0 |
Версия 2.1 |
Поскольку по умолчанию объекты добавляются асинхронно, обработку данных можно делать только после события, сигнализирующего об окончании добавления на карту дочерних объектов кластеризатора. |
Дочерние объекты кластеризатора (кластеры и метки, не попавшие ни в один кластер) добавляются на карту синхронно. |
Изменение цвета иконки кластера
Версия 2.0 |
Версия 2.1 |
Для изменения цвета иконки кластера необходимо задать ему следующие опции:
Также управлять цветом кластеров можно с помощью опции |
Изменить цвет иконки кластера можно с помощью опции |
Указание опций для объектов в составе кластера
Версия 2.0 |
Версия 2.1 |
Опции, задаваемые через кластеризатор, применяются ко всем его дочерним объектам: как к одиночным меткам (не вошедших ни в один кластер), так и к меткам кластеров. Если необходимо задать опции только меткам кластеров, то название опции следует указывать с префиксом «cluster». Однако, если требуется повлиять только на одиночные метки, то так или иначе необходимо задать опции как для одиночных меток, так и для меток кластеров. |
Все опции для дочерних объектов кластеризатора задаются с соответствующими префиксами: для меток кластеров c префиксом «cluster», для одиночных меток — с префиксом «geoObject». Таким образом, опции дочерних объектов не зависят друг от друга. |
Элементы управления картой
Доступные элементы управления
Версия 2.0 |
Версия 2.1 |
|
Добавлены новые элементы управления:
Больше не поддерживаются:
|
Добавление элементов управления на карту
Версия 2.0 |
Версия 2.1 |
|
По умолчанию карта создается со стандартными элементами управления: поиск по карте, выбор типа карты, полноэкранный режим, ползунок масштаба, геолокация и кнопка "Пробки". Необходимые элементы управления могут быть заданы двумя способами: так же, как и в версии 2.0, и через конструктор карты при ее создании. Важно При попытке добавить элементы управления с одинаковыми ключами возникнет ошибка. Например, к ошибке приведет следующий код:
Если необходимо создать карту без элементов управления, следует в ее конструкторе передать в поле Элементы управления адаптивны, т. е. умеют подстраиваться под размер карты и размер экрана. Например, при больших размерах карты на элементах управления показывается и подпись, и иконка; при средних — только подпись; при маленьких — только иконка. Подробнее см. в разделе руководства разработчика Элементы управления. |
Позиционирование элементов управления
Версия 2.0 |
Версия 2.1 |
|
Элементы управления могут размещаться поверх карты двумя способами, которые можно регулировать с помощью опции
|
Балун
Версия 2.0 |
Версия 2.1 |
|
Если карта имеет маленькие размеры, то балун отображается в виде панели в нижней части карты. Если необходимо отобразить балун в качестве всплывающего окна над меткой, необходимо задать опцию |
Балун, выходящий за пределы карты
Версия 2.0 |
Версия 2.1 |
В приведенном фрагменте кода перемещение точки привязки балуна (то есть его «ножки») не отслеживается, поэтому балун будет отображен даже в том случае, когда он полностью выйдет за границы карты. Для того чтобы балун отображался за пределами карты с тенью, необходимо задать опцию |
В приведенном примере балун отображается, даже если точка его привязки не попадает в область видимости карты. В песочнице подробно рассмотрен пример, в котором реализовано слежение за перемещением точки привязки балуна относительно пределов карты. |
Оверлеи
Метод getOverlay
Версия 2.0 |
Версия 2.1 |
Возвращает оверлей сущности (геообъекта, балуна или хинта) либо null. Не поддерживает работу в асинхронном режиме. |
Является асинхронным. Возвращает объект-обещание, который подтверждается объектом оверлея в момент его фактического создания, либо отклоняется с передачей соответствующей ошибки. |
Методы, возвращающие макет (getLayout, getShadowLayout и т. д.)
Версия 2.0 |
Версия 2.1 |
Являются синхронными. Возвращают макет сущности (элемента управления, геообъекта, балуна или хинта). |
Являются асинхронными. Возвращают объект-обещание, который подтверждается макетом в момент его фактического создания, либо отклоняется с передачей соответствующей ошибки. |
Переход с версии 1.x
Данный раздел содержит примеры кода для выполнения основных операций с JavaScript API Яндекс Карт версий 1.1 и 2.1.
Добавление геообъектов на карту
Подключение API
Версия 1.1 |
Версия 2.1 |
URL API: https://api-maps.yandex.ru/1.1/index.xml. Загруженный API включает в себя библиотеку jQuery. |
URL API: https://api-maps.yandex.ru/2.1/. Доступные параметры:
API не включает в себя библиотеку jQuery и допускает модульную загрузку (минимизация трафика). |
Создание карты
Версия 1.1 |
Версия 2.1 |
Центр и коэффициент масштабирования карты задаются после ее инициализации. |
Центр и коэффициент масштабирования карты задаются при ее инициализации. По умолчанию карта создастся со стандартными элементами управления. |
Параметры карты
Изменение области просмотра карты
Версия 1.1 |
Версия 2.1 |
|
|
Плавное перемещение центра карты
Версия 1.1 |
Версия 2.1 |
|
|
Получение максимального и минимального масштабов карты
Версия 1.1 |
Версия 2.1 |
Получение максимального и минимального значений коэффициентов масштабирования - синхронная операция (все необходимые данные загружаются при подключении API). Максимальное и минимальное значения коэффициентов масштабирования определяются для заданной области просмотра карты. |
Получение максимального и минимального значений коэффициентов масштабирования - асинхронная операция (при вызове метода формируется запрос к серверу и возвращается объект-обещание). Максимальное и минимальное значения коэффициентов масштабирования определяются для заданной точки карты. |
Поведения карты
Включение поведений карты
Версия 1.1 |
Версия 2.1 |
Включать поведения карты можно только после ее инициализации. |
Включать поведения карты можно как при ее создании, так и после. |
Отключение поведений карты
Версия 1.1 |
Версия 2.1 |
Поведения карты отключаются после ее инициализации. |
Отключать поведения карты можно как при ее инициализации, так и после. |
Добавление геообъектов на карту
Версия 1.1 |
Версия 2.1 |
Все геообъекты добавляются на карту с помощью метода |
Все геообъекты добавляются на карту через глобальную коллекцию |
Метка
Версия 1.1 |
Версия 2.1 |
|
|
Изменение значка метки
Версия 1.1 |
Версия 2.1 |
|
|
Балун
Версия 1.1 |
Версия 2.1 |
|
|
Всплывающая подсказка
Версия 1.1 |
Версия 2.1 |
Позиция всплывающей подсказки задается локальными пиксельными координатами. |
Позиция всплывающей подсказки задается в географических координатах. |
Ломаная линия
Версия 1.1 |
Версия 2.1 |
|
|
Многоугольник
Версия 1.1 |
Версия 2.1 |
Если координаты первой и последней вершин многоугольника не совпадают, то при его отрисовке эти вершины будут автоматически соединены. |
Если у многоугольника координаты первой и последней вершин не совпадают, то при создании этого многоугольника добавится еще одна вершина, совпадающая с первой. |
Коллекции
Создание коллекции
Версия 1.1 |
Версия 2.1 |
|
|
Отображение элементов коллекции на карте
Версия 1.1 |
Версия 2.1 |
|
|
Удаление элементов из коллекции
Версия 1.1 |
Версия 2.1 |
|
|
Задание стиля для элементов коллекции
Версия 1.1 |
Версия 2.1 |
|
|
Элементы управления картой
Добавление элементов управления на карту
Версия 1.1 |
Версия 2.1 |
|
Стандартный набор элементов управления создается автоматически при создании карты. |
События
Добавление обработчика события карты
Версия 1.1 |
Версия 2.1 |
|
|
Удаление обработчика события
Версия 1.1 |
Версия 2.1 |
|
|
Геопоиск
Прямое геокодирование
Версия 1.1 |
Версия 2.1 |
|
|
Обработка событий геокодера
Версия 1.1 |
Версия 2.1 |
|
|
Маршрутизатор
Создание маршрута
Версия 1.1 |
Версия 2.1 |
Точки маршрута можно задавать, указав либо их координаты (объект класса |
Точки маршрута могут быть заданы в одном из следующих форматов:
|
Добавление маршрута на карту
Версия 1.1 |
Версия 2.1 |
|
|
Обработка событий маршрутизатора
Версия 1.1 |
Версия 2.1 |
|
|