Например:
Если явно не указать набор поведений при инициализации карты, то ей присваивается набор поведений по умолчанию. Доступ к поведениям карты предоставляется полем behaviors. Так же как и параметры карты, поведения можно изменить после ее создания карты.
<script type="text/javascript">
var myMap;
// при успешной загрузке API выполняется соответствующая функция
ymaps.ready(function(){
// создание экземпляра карты и его привязка к контейнеру с id="map"
myMap = new ymaps.Map("map", {
// центр карты
center: [55.75396, 37.620393],
// коэффициент масштабирования
zoom: 8,
// тип карты, по умолчанию используется тип карты "схема"
//type: "yandex#map",
// подключаем поведения: "по умолчанию"
behaviors: ["default"]
// или так - подключаем поведения: "по умолчанию" и редактор маршрутов routeEditor
behaviors: ["default", "routeEditor"]
// или так - подключаем поведения: dblClickZoom, scrollZoom, ruler
behaviors: ["dblClickZoom", "scrollZoom", "ruler"]
// или так - отключаем все поведения
behaviors: []
});
// ...
// код работы с поведением Яндекс.Карты
// ...
}); // end ymaps.ready
</script>
Поведение | Описание |
---|---|
drag | перетаскивание карты с помощью мыши либо одиночного касания |
dblClickZoom | масштабирование карты двойным щелчком кнопки мыши |
leftMouseButtonMagnifier | масштабирование карты при выделении области левой кнопкой мыши |
rightMouseButtonMagnifier | масштабирование карты при выделении области правой кнопкой мыши |
multiTouch | масштабирование карты мультисенсорным касанием |
routeEditor | редактор маршрутов |
ruler | линейка, позволяет отмечать на карте точки и отображать расстояния между ними |
scrollZoom | масштабирование карты колесом мыши |
storage | хранилище классов поведений карты, добавление нового поведения на карту производится через это хранилище |
Рассмотрим методы для изменения поведений карты.
Метод | Описание |
---|---|
disable() | выключает поведение |
enable() | включает поведение |
isEnabled | проверяет, включено ли поведение, возвращает Boolean |
getParent() | возвращает ссылку на родительский объект |
setParent(parent) | устанавливает родительский объект, если передать значение null, то элемент управления будет только удален из текущего родительского объекта |
Рассмотрим методы для работа с поведениями на примере поведения drag.
// ...
// код работы с поведением Яндекс.Карты
// ...
// включаем поведение "перетаскивание карты с помощью мыши либо одиночного касания"
myMap.behaviors.enable("поведение");
т.е.
myMap.behaviors.enable("drag");
// отключение поведений карты
myMap.behaviors.disable("drag");
// проверяем, включено ли поведение
myMap.behaviors.isEnabled('drag');
// проверяем, если ли поведение не включено, то
if (!(myMap.behaviors.isEnabled('drag'))) {
// включаем поведение drag
myMap.behaviors.enable("drag");
}