Подтвердить что ты не робот

LeafletJS: как удалить зум-контроль

Я пытаюсь удалить элементы управления увеличением (+/-) на карте LeafletJS.

Я использую MapBox.js версию Листовки, но большинство операций такие же, как и Листовка. Я реализую свою карту следующим образом:

var map = L.mapbox.map('map');

var layer = L.mapbox.tileLayer('MAPBOX-ID', {
    format: 'jpg70',
    minZoom: 13,
    maxZoom: 15,
    reuseTiles: true, 
    unloadInvisibleTiles: true
});
map.addLayer(layer);
map.setView([40.73547,-73.987856]);

В документации есть опция zoomControl, которая удалит элемент управления масштабированием с карты, но мне не повезло, что он работает.

Как удалить элемент управления масштабированием с помощью этой реализации?

Спасибо!

4b9b3361

Ответ 1

Это сработало для меня:

var map = new L.map('map', { zoomControl: false });

Попробуйте с помощью mapbox:

var map = L.mapbox.map('map', { zoomControl: false });

См. создание карты и параметр zoomControl в документации Leaflet.

Ответ 2

Если вы хотите динамически включать и выключать масштабирование, вы можете сделать что-то вроде этого:

map.touchZoom.disable();
map.doubleClickZoom.disable();
map.scrollWheelZoom.disable();
map.boxZoom.disable();
map.keyboard.disable();
$(".leaflet-control-zoom").css("visibility", "hidden");

Ответ 3

Благодаря ответу на координаты я смог выяснить правильный метод. Решение:

// Create the map
var map = L.mapbox.map('map', null, { zoomControl:false });

// Create my custom layer
var layer = L.mapbox.tileLayer('MAPBOX-ID', {
    format: 'jpg80',
    minZoom: 13,
    maxZoom:15,
    tileSize: 256,
    reuseTiles: true, 
    unloadInvisibleTiles: true
});


// Add the layer
map.addLayer(layer);

Ответ 4

вы можете удалить элемент управления zoomControl следующим образом:

map.removeControl(map.zoomControl);

Ответ 5

Вы можете просто использовать

map.zoomControl.remove();

Ответ 6

map.scrollWheelZoom.disable();

Ответ 7

Для динамического удаления и добавления обратно элемента управления масштабированием:

var map = L.mapbox.map('map');

if( wantToRemove ) {
    map.removeControl( map.zoomControl ); 
} else {
    map.addControl( map.zoomControl );
}