• Как удалить все элементы управления яндекс-карт?

    @LeSDav
    Веб-разработчик
    Если карта создана через ЯндексAPI, то удалить все элементы управления можно двумя способами.
    Первый способ - при создании карты в разделе установки параметров есть массив "controls". В нем должен быть перечислен список необходимых объектов управления. Если оставить его пустым, то карта инициализируется без элементов управления.

    // Инициализация карты
    var myMap = new ymaps.Map('map', {
        center: [50.45754, 30.453987],
        zoom: 10,
        controls: []
      });


    Второй способ - если карта уже создана, то можно отключать ненужные элементы управления следующим образом:

    // Инициализация карты
    var myMap = new ymaps.Map('map', {
        center: [50.45754, 30.453987],
        zoom: 10
      });
    
        // Удаление стандартного набора кнопок
        myMap.controls.remove("mapTools")
        .remove("typeSelector")
        .remove("searchControl")
        .remove("trafficControl")
        .remove("miniMap")
        .remove("scaleLine")
        .remove("routeEditor")
        .remove("smallZoomControl");


    Узнать названия всех доступных элементов управления можно вот здесь.
    Ответ написан
    4 комментария
  • Как сделать, чтобы балун всегда находился в центре карты?

    0xD34F
    @0xD34F Куратор тега Яндекс.Карты
    Если надо обновлять координаты после перемещения, то слушаете событие boundschange:

    map.events.add('boundschange', function() {
      map.balloon.setPosition(map.getCenter());
    });

    Во время перемещения - слушаете actiontickcomplete:

    map.events.add('actiontickcomplete', function(e) {
      const { globalPixelCenter, zoom } = e.get('tick');
      map.balloon.setPosition(map.options.get('projection').fromGlobalPixels(globalPixelCenter, zoom));
    });

    jsfiddle.net/da9ux62p/1
    Ответ написан
    Комментировать