Перейти к основному содержимому

Справочник API

Параметры виджета​

Параметры метода init​

ПараметрОбязательныйОписание
widthдаШирина виджета. Может быть указана в пикселях или в процентах
heightдаВысота виджета. Может быть указана в пикселях или в процентах
containerнетЭлемент, внутри которого создать виджет. Можно передать либо сам элемент, либо его id. Если параметр не указан, виджет будет создан в том месте, где расположен код инициализации (с помощью document.write).
initDataдаДанные для инициализации виджета

Данные для инициализации виджета initData​

ПараметрОбязательныйОписание
complexIdдаid здания, этажи которого необходимо показать
optionsнетОпции виджета

Опции виджета​

ПараметрОписаниеЗначение по умолчанию
localeЛокаль интерфейса виджета. Доступные значения: ru_RU, es_CL или en_USru_RU
initialSearchQueryИнициализирует виджет с открытой поисковой выдачей по переданному запросуundefined
initialRubricИнициализирует виджет с открытым списком фирм в рубрике с переданным idundefined
initialFirmИнициализирует виджет с открытой карточкой фирмы с переданным idundefined
initialZoomОпределяет уровень масштаба, на котором следует открыть виджет. Если не указан, масштаб выбирается автоматически, чтобы уместить в виджете всё здание. Параметр игнорируется, если указан один из параметров initialSearchQuery или initialRubricundefined
initialRotationОпределяет угол поворота карты, на котором следует открыть виджет. Указывается в радианах. Если не указан, угол выбирается автоматическиundefined
initialFloorОпределяет этаж, на котором следует открыть виджет. Если не указан, виджет открывается на дефолтном этаже здания.undefined
rotatableОпределяет, можно ли вращать карту с этажамиtrue
minZoomОпределяет минимальный уровень масштаба карты. Если не указан, вычисляется автоматическиundefined
maxZoomОпределяет максимальный уровень масштаба карты. Если не указан, вычисляется автоматическиundefined

Методы виджета​

Метод DG.FloorsWidget.init возвращает объект, у которого доступно для вызова три метода.

МетодОписание
search(query)Открывает поисковую выдачу по переданному запросу
showFirm(firmId)Открывает карточку фирмы с переданным id
showRubric(rubricId)Открывает список фирм в рубрике с переданным id
zoomIn()Увеличивает масштаб карты
zoomOut()Уменьшает масштаб карты
showFloor(floor)Переключает карту на этаж с переданным названием. Принимает строку с названием этажа

События​

Объект виджета генерит события, на которые можно подписываться. Для управления событиями служат методы:

МетодОписание
on(type, handler)Добавляет обработчик handler для события type
off(type, handler)Удаляет обработчик handler для события type
off(type)Удаляет все обработчики для события type
off()Удаляет все обработчики всех событий

Для подписки доступны следующие события:

НазваниеОписаниеДанные, приходящие в событии
initПроисходит в момент инита картыfloorList, firmList
clickПроисходит, когда пользователь кликает в фирму (комнату или иконку) на картеfirmIds
zoomendПроисходит в момент окончания анимации зумаstate
floorswitchПроисходит в момент переключения этажаstate

Данные событий​

floorList​

Массив, содержащий названия всех этажей здания в порядке от самого нижнего к самому высокому.

firmList​

Массив, содержащий все фирмы в здании. Элемент массива — объект со следующими полями:

НазваниеТипОписание
idstringid фирмы
floorstringНазвание этажа, на котором расположена фирма

state​

Объект, содержащий данные о текущем состоянии карты. Имеет следующие поля:

НазваниеТипОписание
floorstringНазвание текущего этажа
zoomnumberТекущий масштаб карты
minZoomnumberМинимальный маштаб карты
maxZoomnumberМаксимальный масштаб карты

firmIds​

Массив id фирм, куда был произведён клик. Не может быть пустым. Может иметь больше одного элемента в случае, когда произведён клик в комнату, содержащую несколько фирм.