Поведения карты

Open in CodeSandbox

Взаимодействие карты с пользователем программируется с помощью поведений.

Поведения карты контролируются менеджером поведений. Cоздавать экземпляры этого класса самостоятельно не следует. Ссылка на менеджер поведений находится в поле behaviors объекта карты.

<!DOCTYPE html>

<html>
    <head>
        <title>Примеры. Поведения карты</title>
        <meta
            http-equiv="Content-Type"
            content="text/html; charset=utf-8"
        />
        <!--
        Укажите свой API-ключ. Тестовый ключ НЕ БУДЕТ работать на других сайтах.
        Получить ключ можно в Кабинете разработчика: https://developer.tech.yandex.ru/keys/
    -->
        <script
            src="https://api-maps.yandex.ru/2.0/?load=package.standard&amp;lang=ru-RU&amp;apikey=<ваш API-ключ>"
            type="text/javascript"
        ></script>

        <script src="behaviors.js" type="text/javascript"></script>
    </head>

    <body>
        <div id="map" style="width:400px; height:300px"></div>
    </body>
</html>
var myMap;

ymaps.ready(init);

function init() {
    myMap = new ymaps.Map("map", {
        // Санкт-Петербург
        center: [59.93772, 30.313622],
        zoom: 10,
        // Включим поведения по умолчанию (default)
        // и добавим масштабирование колесом мыши.
        behaviors: ["default", "scrollZoom"],
    });

    myMap.behaviors
        // Отключаем часть включенных по умолчанию поведений:
        //  - drag - перемещение карты при нажатой левой кнопки мыши;
        //  - magnifier.rightButton - увеличение области, выделенной правой кнопкой мыши.
        .disable(["drag", "rightMouseButtonMagnifier"])
        // Включаем линейку.
        .enable("ruler");

    // Изменяем свойство поведения с помощью опции:
    // изменение масштаба колесом прокрутки будет происходить медленно,
    // на 1/2 уровня масштабирования в секунду.
    myMap.options.set("scrollZoomSpeed", 0.5);
}